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

MySQL cách tốt nhất để lưu trữ các chuỗi dài

Nói chung, đây không phải là một câu hỏi có câu trả lời "chính xác". Không có kiểu lưu trữ văn bản "độ dài vô hạn" trong MySQL. Bạn có thể sử dụng LONGTEXT , nhưng điều đó vẫn có giới hạn trên (cao một cách vô lý). Tuy nhiên, nếu bạn làm vậy, bạn sẽ phải đối mặt với DBMS của mình vì phải xử lý khối cột vô lý đó cho văn bản 50 ký tự của bạn. Chưa kể thực tế là bạn hầu như không làm gì với nó.

Vì vậy, hầu hết các tính năng tương lai (TM) có lẽ được cung cấp bởi LONGTEXT . Nhưng đó cũng là một phương pháp rất tồi để giải quyết vấn đề. Thành thật mà nói, tôi muốn xem lại các yêu cầu ứng dụng. Lưu trữ các chuỗi không có "miền" (như trong, được xác định rõ trong ứng dụng của chúng) và độ dài tùy ý không phải là một trong những điểm mạnh của RDBMS.

Nếu tôi muốn giải quyết vấn đề này ở cấp độ "thiết kế ứng dụng", tôi sẽ sử dụng kho khóa-giá trị NoSQL cho việc này (và tôi cũng chống NoSQL cường điệu như họ nhận được, vì vậy bạn biết nó nghiêm trọng), thậm chí mặc dù tôi nhận ra đó là một thay đổi khá tốn kém cho một thay đổi nhỏ như vậy. Nhưng nếu đây là một dấu hiệu cho thấy DBMS của bạn cuối cùng sẽ nắm giữ những gì, thì có thể thận trọng hơn khi chuyển đổi ngay bây giờ để tránh vấn đề tương tự này hàng trăm lần trong tương lai. Miền dữ liệu rất quan trọng trong RDBMS, trong khi miền dữ liệu được đặt bên lề một cách rõ ràng trong các giải pháp không quan hệ, đây dường như là những gì bạn đang cố gắng giải quyết ở đây.

Bạn gặp khó khăn với MySQL? Chỉ cần tăng nó lên VARCHAR(1000) . Nếu bạn không có yêu cầu nào đối với dữ liệu của mình, thì việc bạn làm như thế nào cũng không liên quan.



  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ách so sánh giá trị rỗng trong MySQL

  2. Cách kiểm tra xem người dùng đã tồn tại trong MySQL với PHP hay chưa

  3. GRANT tối thiểu cần thiết bởi mysqldump để kết xuất một lược đồ đầy đủ? (Thiếu TRIGGERs !!)

  4. Đọc trang tính XLSX để cấp bảng MySQL bằng PHPExcel

  5. Làm cách nào để sử dụng AJAX để tải lên tệp CSV lớn?