Gửi mọi người Group Telegream Wecommit Public Community : www.wecommit.com.vn/wecommitcommunity ,anh em có thể trao đổi những câu hỏi , vấn đề khi xem Video và kết nối với tôi trong Group nhé (trường hợp click trực tiếp bị lỗi thì ae copy link ra browser nhé)
@sevenup1399 күн бұрын
sao em thử trên postgre đâu có bị lock đâu anh
@tranquochuywecommit9 күн бұрын
@@sevenup139 đúng rồi, postgres cơ chế hơi khác chút, em thử trên các database oracle, sql server sẽ thấy lock. Anh có 1 video chuyên về FK lock trên kênh đấy, xem video đó nhé
@tranttlc4645 Жыл бұрын
Cái đoạn PK vs FK a ko nói rõ lắm. Chứ e thấy ít ai thiết kế db như thế nên rất hiếm gặp trường hợp bị treo như nêu trên.
@tranquochuywecommit Жыл бұрын
Thực tế gặp nhiều đấy em. Em làm đủ nhiều dự án sẽ thấy. Anh cũng đang tối ưu cho các khách hàng gặp vấn đề này
@namtongdosa9626 Жыл бұрын
hình như index không tự động được tạo trên foreign key bạn ạ, hình như dùng InnoDB thì nó mới tự động tạo
@hungtuan3791 Жыл бұрын
Anh có thể giải thích rõ hơn về việc tại sao trên bảng con không có index lại khiến bảng cha bị treo không ạ. Và bị treo cả bảng cha hay chỉ một vài row nhất định anh nhỉ ?. Em cảm ơn ạ
@tranquochuywecommit Жыл бұрын
Em có thể lên xem bài viết lý giải chi tiết trên wecommit.com.vn nhé
@hungtuan3791 Жыл бұрын
@@tranquochuywecommit sáng nay e có thử lại theo thì sau lần đầu xoá bảng con thì bảng cha sẽ bị block. Nhưng sau khoảng 30p e thử lại cũng xoá dữ liệu ở bảng con thì bảng cha lại k bị block nữa. Vấn đề này là do đâu anh nhỉ ?
@vihtago Жыл бұрын
Cho e hỏi sâu về cơ chế nó làm cái gì v ạ?
@tranquochuywecommit Жыл бұрын
Các bài phân tích chuyên sâu hơn nữa, em có thể đọc ở dạng bài viết trên wecommit.com.vn nhé.
@namtongdosa9626 Жыл бұрын
Nếu bảng cha mình dùng DELETE CASCADE thì có bị treo (khi câu insert ở bảng con chưa commit/ rollback) không a?
@dbt12314 ай бұрын
có ý kiến cho rằng, gần đây các developer đang có xu hướng drop ràng buộc foreign key khi thiết kế csdl, mục đích để tăng performance. bạn có nhận xét gì về ý kiến đó? thank bạn @TranQuocHuy
@hieuvuduc88404 ай бұрын
Mình cũng chung câu hỏi vì dự án hiện tại sếp bên mình cũng đang yêu cầu k dùng foreign key. Mong được a Huy giải đáp
@tunamusic23144 ай бұрын
thế sao join các bảng lấy data liên quan nhỉ
@hieuvuduc88404 ай бұрын
@@tunamusic2314 sẽ lên service xử lý ấy bác ơi
@dbt12314 ай бұрын
@@tunamusic2314 có hay không thì vẫn join được mà bạn. Ý mình ở đây là việc thiết lập foreign trong DB
@DatNickNganGonVaDeNho4 ай бұрын
Foreign key sinh ra để thêm ràng buộc dữ liệu, đảm bảo nếu xảy ra update thì sẽ check constraint ở tầng db, thực tế khi dev bỏ constraint này đi thì sẽ lợi nhiều lợi ích, nhưng ở prod mà bỏ constraint đi thì sẽ có rủi ro rất lớn, phải handle toàn bộ các câu lệnh sql, và thường xử dụng ORM mới làm đc điều này ( protect đc bằng CASCADE ở hầu hết framework khi xây dựng ORM), quy mô dự án vừa và nhỏ thường đc xử dụng, nhưng khi lên prod thường sẽ thêm các constraint (foreign key, unique,…) vào. Vẫn là câu chuyện đánh đổi performance và consistancy, nếu nhắm handle đc thì bỏ, db đỡ phải check constraint, vì tầng BE chắc chắn đã validate trước khi update/delete. Thường những dự án lớn như banking sẽ có 1 đội DB riêng, chuyên cung cấp procedure cho BE. Còn lại thì BE sẽ tự handle toàn bộ constraint, ko apply constraint trên db.
@seapea2002 Жыл бұрын
e có vào web và thấy khóa học tối ưu của anh thì em muốn hỏi em mới là sinh viên năm 3, về mysql cũng chỉ biết cơ bản các câu lệnh thì có theo được khóa tối ưu không a
@tranquochuywecommit Жыл бұрын
Em inbox anh để anh hiểu hơn về em thì anh mới có thể giúp em tốt nhất nhé. Zalo anh: 0888549190
@uctuanvu2975 Жыл бұрын
Thường thì đánh khoá primary cho bảng con thì nó cũng sẽ mặc định đc index chứ nhỉ
@tranquochuywecommit Жыл бұрын
Trong thực tế, các cột được chọn làm Foreign key trên bảng con thường không phải là Primary Key anh em nhé.
@namtongdosa9626 Жыл бұрын
Primary thì index tự động được tạo rồi bạn còn foreign key chưa chưa hẳn
@hoanguyeninh4777 Жыл бұрын
A cho e hỏi chút e xem các bài viết của anh có áp dụng hầu như là demo với oracle thì phạm vi nó cũng có thể áp dụng với các hệ QTCSDL khác như mysql/posgresql được đúng không ạ. Vì hiện tại e chỉ làm việc với 2 thằng này thôi ạ. E cảm ơn!
@tranquochuywecommit Жыл бұрын
áp dụng thoải mái em ah. Tối ưu là tư duy và nguyên lý mà. Có rất nhiều anh em đang làm dự án với MySQL, PostgreSQL, SQLServer đang đồng hành cùng anh và đang áp dụng những bài viết tối ưu của anh trong dự án hiện tại. Trong nhiều bài viết anh cũng có demo để chứng minh nguyên lý có thể áp dụng với nhiều loại CSDL khác nhau.
@hoanguyeninh4777 Жыл бұрын
@@tranquochuywecommit Dạ vâng a. E cảm ơn ạ!
@hungtiet52846 ай бұрын
cái quan trọng nhất là tại sao thì k có thấy noiis
@futhedude48484 ай бұрын
để bán khóa học mà bro :v
@nguyenngothuong Жыл бұрын
Lạy chúa em lấy data trên web về thực hành tầm 1tr dòng select cực lâu 😢😢😢
@tranquochuywecommit Жыл бұрын
Tối ưu bản chất là tư duy và nguyên lý. Anh tặng em link các nội dung về tối ưu (liên tục cập nhật): wecommit.com.vn/tong-hop-link-cac-bai-viet-hay-tren-trang-wecommit-com-vn/
@nguyenhuudungz Жыл бұрын
Em thấy mysql ko bị treo.
@tranquochuywecommit Жыл бұрын
Trường hợp của em thì hệ thống đã tự động tạo Index trên FK rồi. Em thử kiểm tra trên hệ thống của mình thông tin Index có tạo chưa nhé.
@funy2024-k8n Жыл бұрын
khoá học mình có chi phí bao nhiêu ạ
@tranquochuywecommit Жыл бұрын
Anh em đọc thông tin tại đây nhé wecommit.com.vn/chuong-trinh-dao-tao-toi-uu-co-so-du-lieu-wecommit/