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

Có MySQL tương đương với loại thiết lập của Python không?

Cách thích hợp để triển khai một tập hợp trong SQL sẽ là với hai bảng bổ sung:

CREATE TABLE set (
    id int unsigned PRIMARY KEY AUTO_INCREMENT
);

CREATE TABLE set_member (
    set_id int unsigned NOT NULL,
    FOREIGN KEY (set_id) REFERENCES set(id),
    member <whatever_type_your_set_is_of> NOT NULL,
    UNIQUE (set_id, member)
);

(Bạn có thể tránh được set bảng, nếu bạn chỉ muốn lưu trữ các tập hợp trong một bảng và bảng đó có một ID duy nhất và bạn sẽ chỉ lưu trữ một tập hợp cho mỗi bản ghi trong bảng)

Vì rất có thể bạn đang không tìm kiếm một cách tiếp cận SQL thích hợp (thực tế là tốt, nếu bạn sẽ không bao giờ thực hiện bất kỳ thao tác nào trong cơ sở dữ liệu trên các tập hợp đó, ngoài việc lưu trữ và truy xuất), bạn có thể sẽ lưu trữ tập hợp của mình không chuẩn hóa trong một trường duy nhất trên bảng thay vì tuân theo các phương pháp được khuyến nghị; trong trường hợp đó, không có kiểu dữ liệu MySQL gốc nào có thể đại diện cho một tập hợp Python và bạn sẽ cần phải tuần tự hóa tập hợp của mình trong một varchar hoặc một text cột. Bạn hoàn toàn tùy thuộc vào việc chọn định dạng tuần tự hóa phù hợp với nhu cầu của mình.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Cách tách các giá trị trong các chuỗi đơn bằng cách sử dụng dấu phẩy

  2. MySQL THAY THẾ trên nhiều khóa?

  3. Chuyển đổi câu lệnh hợp nhất thành MYSQL bằng cách sử dụng khóa trùng lặp

  4. Sự khác biệt giữa SQL và MySQL là gì?

  5. Không thể khởi động máy chủ mysql trong ubuntu