nmd
11-05-2007, 10:29
Mình có điều băn khoăn về các định type cho field. Để mình nói 1 vd cụ thể cho dễ hiểu nhé:
Có 2 table. Thằng đầu là Users chứa các thông tin của user trong đó có UserID và UserName... Còn thằng thứ 2 là Reviews trong đó chứa những bài review của user. Thực chất còn có 1 table thứ 3 là Business trong đó có BusinessID và BusinessName và các field khác.
Quay lại bảng Review, nó chứa những bài review của user vè các business. Do đó, nó có các field:
ReviewID
ReviewContent
Hai thằng này kô có vấn đề gì cả. Nhưng đến 2 field sau thì mình có chút băn khoăn.
-Nên là UserID hay UserName.
-Nên là BusinessID hay BusinessName.
Hồi trước thì mình dùng ID thôi. Nhưng hôm nay nghĩ kĩ lại thì có chút bối rối.
-Nếu như dùng ID cho 2 field đó, mỗi lần truy xuất nôi dung Reviews table thì mình buộc phải join với 2 table kia để lấy username và businessname để hiện lên Web page nữa- kô ai hiện ra id cả.
-Còn nếu dùng name cho 2 field đó thì mỗi lần truy xuất thì chằng cần join với 2 table kia làm gì. Và mình nghĩ như thế sẽ nhanh hơn, đúng kô? Nhưng nhược điểm là DB sẽ lớn hơn.
Nên dùng cách nào bây giờ?
Có 2 table. Thằng đầu là Users chứa các thông tin của user trong đó có UserID và UserName... Còn thằng thứ 2 là Reviews trong đó chứa những bài review của user. Thực chất còn có 1 table thứ 3 là Business trong đó có BusinessID và BusinessName và các field khác.
Quay lại bảng Review, nó chứa những bài review của user vè các business. Do đó, nó có các field:
ReviewID
ReviewContent
Hai thằng này kô có vấn đề gì cả. Nhưng đến 2 field sau thì mình có chút băn khoăn.
-Nên là UserID hay UserName.
-Nên là BusinessID hay BusinessName.
Hồi trước thì mình dùng ID thôi. Nhưng hôm nay nghĩ kĩ lại thì có chút bối rối.
-Nếu như dùng ID cho 2 field đó, mỗi lần truy xuất nôi dung Reviews table thì mình buộc phải join với 2 table kia để lấy username và businessname để hiện lên Web page nữa- kô ai hiện ra id cả.
-Còn nếu dùng name cho 2 field đó thì mỗi lần truy xuất thì chằng cần join với 2 table kia làm gì. Và mình nghĩ như thế sẽ nhanh hơn, đúng kô? Nhưng nhược điểm là DB sẽ lớn hơn.
Nên dùng cách nào bây giờ?