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

utf-8 so với latin1

Ưu điểm của UTF8:

  1. Hỗ trợ hầu hết các ngôn ngữ, bao gồm cả các ngôn ngữ RTL như tiếng Do Thái.

  2. Không cần bản dịch khi nhập / xuất dữ liệu sang các thành phần nhận biết UTF8 (JavaScript, Java, v.v.).

UTF8 Nhược điểm:

  1. Các ký tự không phải ASCII sẽ mất nhiều thời gian hơn để mã hóa và giải mã, do sơ đồ mã hóa phức tạp hơn của chúng.

  2. Các ký tự không phải ASCII sẽ chiếm nhiều dung lượng hơn vì chúng có thể được lưu trữ bằng cách sử dụng nhiều hơn 1 byte (các ký tự không nằm trong 127 ký tự đầu tiên của bộ ký tự ASCII). CHAR(10) hoặc VARCHAR(10) trường có thể cần tới 30 byte để lưu trữ một số ký tự UTF8.

  3. Các ảnh ghép khác với utf8_bin sẽ chậm hơn vì thứ tự sắp xếp sẽ không ánh xạ trực tiếp đến thứ tự mã hóa ký tự) và sẽ yêu cầu dịch trong một số thủ tục được lưu trữ (vì các biến được mặc định thành utf8_general_ci đối chiếu).

  4. Nếu bạn cần JOIN Các trường UTF8 và không phải UTF8, MySQL sẽ áp đặt một SEVERE hiệu suất hit. Các truy vấn dưới giây sẽ là gì có thể mất phút nếu các trường được kết hợp là các bộ ký tự / đối chiếu khác nhau.

Điểm mấu chốt:

Nếu bạn không cần hỗ trợ các ngôn ngữ không phải Latin1, muốn đạt được hiệu suất tối đa hoặc đã có các bảng sử dụng latin1 , chọn latin1 .

Nếu không, hãy chọn UTF8 .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chức năng xếp hạng trong MySQL

  2. Tải lại dữ liệu MySQL bên trong DIV bằng Ajax

  3. ghi kết quả của truy vấn sql vào một tệp trong mysql

  4. Chuyển kết quả cơ sở dữ liệu thành mảng

  5. Các phương pháp hay nhất của mysqldump:Phần 1 - Điều kiện tiên quyết của MySQL