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

Các ký tự Unicode (hệ thập lục phân) trong MySQL

Bạn có thể chỉ định chữ thập lục phân (hoặc thậm chí các ký tự nhị phân ) bằng cách sử dụng 0x , x '' hoặc X '' :

select  0xC2A2;
select x'C2A2';
select X'C2A2';

Nhưng lưu ý rằng kiểu trả về là một chuỗi nhị phân, vì vậy mỗi và mỗi byte được coi là một ký tự. Bạn có thể xác minh điều này bằng char_length :

select char_length(0xC2A2)

Nếu bạn muốn UTF-8 thay vào đó, bạn cần sử dụng convert :

select convert(0xC2A2 using utf8mb4)

Và chúng ta có thể thấy rằng C2 A2 được coi là 1 ký tự trong UTF-8:

select char_length(convert(0xC2A2 using utf8mb4))

Ngoài ra, bạn không phải lo lắng về các byte không hợp lệ vì convert sẽ tự động xóa chúng:

select char_length(convert(0xC1A2 using utf8mb4))

Như có thể thấy, đầu ra là 0 bởi vì C1 A2 là một chuỗi byte UTF-8 không hợp lệ.



  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ọn tất cả các bản ghi không đáp ứng các điều kiện nhất định trong một bảng đã tham gia

  2. CẬP NHẬT / XÓA trong mysql và nhận danh sách id hàng bị ảnh hưởng?

  3. trả về boolean mysql là 'yes' hoặc 'no'

  4. Cách cập nhật giá trị khóa ngoại trong cơ sở dữ liệu mysql

  5. Làm cho chế độ xem sql có thể chỉnh sửa