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

VARCHAR so với TEXT trong MySQL

Một VARCHAR dài được lưu trữ theo cách giống như một TEXT / BLOB trường trong InnoDB (mà tôi cho rằng bạn đang sử dụng cho giao dịch, tính toàn vẹn tham chiếu và khôi phục sự cố, phải không?) - nghĩa là bên ngoài phần còn lại của bảng trên đĩa (có thể yêu cầu đọc đĩa khác để truy xuất).

nguồn

Trừ khi bạn cần lập chỉ mục các cột này (trong trường hợp đó là VARCHAR nhanh hơn nhiều) không có lý do gì để sử dụng VARCHAR qua TEXT cho các trường dài - có một số tối ưu hóa công cụ cụ thể trong MySQL để điều chỉnh truy xuất dữ liệu theo độ dài và bạn nên sử dụng loại cột chính xác để tận dụng lợi thế của chúng.

Trong trường hợp bạn đang sử dụng MyISAM thảo luận chuyên sâu về chủ đề này tại đây .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Người mới sử dụng Java cần trợ giúp trong việc kết nối cơ sở dữ liệu

  2. Tại sao java.sql.DriverManager.getConnection (...) bị treo?

  3. SQL:Làm cách nào tôi có thể cập nhật một giá trị trên một cột chỉ khi giá trị đó là null?

  4. Làm cách nào để khắc phục lỗi 'Giá trị nằm ngoài phạm vi được điều chỉnh cho cột'?

  5. MYSQL Tạo bảng với giá trị mặc định (biểu thức) cho một cột