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

Đối chiếu MySQL để lưu trữ dữ liệu đa ngôn ngữ của ngôn ngữ không xác định

Bạn nên sử dụng đối chiếu Unicode. Bạn có thể đặt nó theo mặc định trên hệ thống của mình hoặc trên từng trường của bảng. Có những tên đối chiếu Unicode sau đây và đây là sự khác biệt của chúng:

utf8_general_ci là một đối chiếu rất đơn giản. Nó chỉ- loại bỏ tất cả các dấu- sau đó chuyển đổi sang chữ cái trên và sử dụng mã của loại chữ cái kết quả "ký tự cơ sở" này để so sánh.

utf8_unicode_ci sử dụng bảng phần tử đối chiếu Unicode mặc định.

Sự khác biệt chính là:

  1. utf8_unicode_ci hỗ trợ cái gọi là mở rộng và chữ ghép, ví dụ:chữ cái tiếng Đức ß (U + 00DF LETTER SHARP S) được sắp xếp gần "ss" Chữ Œ (U + 0152 LATIN CHỮ HOA OE) được sắp xếp gần "OE".

utf8_general_ci không hỗ trợ mở rộng / chữ ghép, nó sắp xếp tất cả các chữ cái này thành các ký tự đơn lẻ và đôi khi theo thứ tự sai.

  1. utf8_unicode_ci là nói chung chính xác hơn cho tất cả các tập lệnh. Ví dụ:đối với khối Cyrillic:utf8_unicode_ci sử dụng được cho tất cả các ngôn ngữ sau:tiếng Nga, tiếng Bungari, tiếng Belarus, tiếng Macedonian, tiếng Serbia và tiếng Ukraina. Trong khi utf8_general_ci chỉ phù hợp với tập con ký tự Kirin tiếng Nga và tiếng Bungary. Các chữ cái phụ được sử dụng bằng tiếng Belarus, Macedonian, Serbia và Ukraine không được sắp xếp tốt.

+/- Nhược điểm của utf8_unicode_ci là nó chậm hơn utf8_general_ci một chút.

Vì vậy, tùy thuộc vào, nếu bạn biết hay không, ngôn ngữ / ký tự cụ thể nào bạn sẽ sử dụng, tôi khuyên bạn nên sử dụng utf8_unicode_ci có phạm vi phù hợp rộng rãi hơn.



  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ác ký tự unicode của MySQL

  2. Làm thế nào để kết nối mysql với swift?

  3. lấy SUM của mỗi người bằng PersonID

  4. MySQL SELECT vài ngày qua?

  5. Điều cần kiểm tra xem Khả năng sử dụng bộ nhớ MySQL có cao không