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

Phương pháp tốt nhất để lưu trữ danh sách ID người dùng

Nó không hiệu quả. Những gì bạn có ở đây trong thuật ngữ quan hệ là mối quan hệ nhiều-nhiều giữa người dùng và trò chơi. Một người dùng có thể bỏ phiếu cho nhiều trò chơi. Một trò chơi có thể được bình chọn bởi nhiều người dùng. Giải pháp cho điều này là có một bảng tham gia:

USERS (uid, name, ...)
GAMES (gid, name, ...)
VOTES (id, uid, gid, ...)

Trong đó uid và gid là các khóa ngoại quay lại các bảng tương ứng của chúng.

Nếu ai đó bỏ phiếu, hãy chèn một bản ghi vào VOTES.

Để nhận danh sách bình chọn cho trò chơi:

$get = mysql_query("SELECT * FROM votes WHERE gid = $game_id");
...

Để nhận danh sách phiếu bầu của người dùng:

$get = mysql_query("SELECT * FROM votes WHERE uid = $user_id");
...

và như vậy.

Đừng tham gia một mảng và lưu trữ nó trong một cột duy nhất. Bạn đúng khi tránh điều đó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ràng buộc khóa ngoại không thành công

  2. Lỗi TẠO CHỨC NĂNG Hàm này không có DỮ LIỆU SQL DETERMINISTIC, KHÔNG SQL hoặc ĐỌC

  3. PDOException "không thể tìm thấy trình điều khiển"

  4. Lưu dữ liệu JSON lồng nhau vào cơ sở dữ liệu MySQL bằng Hibernate

  5. khi khởi tạo PDO - tôi nên làm gì:charset =UTF8 hay charset =UTF8MB4?