Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách tốt nhất với bảng quan hệ

Cách bạn có nó là cách tối ưu nhất cho đến khi hạn chế về thời gian. Chắc chắn, nó chiếm nhiều dung lượng hơn, nhưng đó là một phần của sự cân bằng giữa không gian-thời gian - Nếu bạn muốn nhanh hơn, bạn sử dụng nhiều không gian hơn; nếu bạn muốn sử dụng ít dung lượng hơn, nó sẽ chạy chậm hơn (trung bình).

Ngoài ra, hãy nghĩ đến tương lai. Ngay bây giờ, có thể bạn đang chọn quốc gia cho từng người dùng, nhưng hãy đợi. Nhờ sự kỳ diệu của phạm vi creep, một ngày nào đó, ứng dụng của bạn sẽ cần chọn tất cả người dùng ở một quốc gia nhất định, tại thời điểm đó, việc quét trường "COUNTRY" của mỗi người dùng để tìm các kết quả phù hợp sẽ cực kỳ chậm, trái ngược với việc chỉ quay ngược lại USER_COUNTRY_REL bảng như bạn có thể làm bây giờ.

Nói chung, đối với mối tương quan 1-1 hoặc 1-nhiều, bạn có thể liên kết bằng khóa ngoại. Đối với mối tương quan nhiều-nhiều, bạn muốn có một bảng quan hệ giữa hai. Tình huống này là một mối quan hệ nhiều-nhiều, vì mỗi người dùng có nhiều quốc gia và mỗi quốc gia có nhiều người dùng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cập nhật nhiều hàng với các khóa đã biết mà không cần chèn các hàng mới nếu tìm thấy các khóa không tồn tại

  2. Bắt nhầm ngoại lệ

  3. Hàm mã hóa Base58 trong PostgreSQL

  4. Sử dụng dấu nền xung quanh tên trường

  5. Làm thế nào để tạo một thủ tục được lưu trữ có chứa DELIMITER trong PHP với PDO?