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

Tôi nên thiết kế / s bảng MYSQL của mình như thế nào?

Bình thường hóa là bạn của bạn.

Bạn sẽ muốn chuyển sang thiết kế hai bảng quan hệ.

CREATE TABLE projects (
   project_id int not null primary key auto_increment,
   project_name varchar(128),
   -- ...
);

CREATE TABLE pages (
   page_id int not null primary key auto_increment,
   project_id int not null, 
   pagetext text,
   image varchar(128), 
   -- ...
);

Bây giờ mỗi dự án có thể có bất kỳ số lượng trang nào.

Nếu sau đó khách hàng quay lại và nói "Mỗi trang có thể có 0-N hình ảnh", bạn muốn có một bảng thứ ba, chứa một khóa ngoại page_id (giống như bảng trang có project_id khóa ngoại)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kết hợp hai bảng, sau đó Đặt hàng theo ngày, NHƯNG kết hợp cả hai bảng

  2. MySQL JOIN - Trả về NULL cho các kết quả trùng lặp trong bảng bên trái

  3. Cách thiết lập kết nối PDO đúng cách

  4. RoR:làm cách nào để kiểm tra ứng dụng của tôi với nhiều cơ sở dữ liệu?

  5. mysql - Làm thế nào để nối các chuỗi và chuyển đổi sang ngày các chuỗi?