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

ký tự mysql regex utf-8

Thư viện biểu thức chính quy của MySQL không hỗ trợ utf-8.

Xem Lỗi # 30241 Sự cố về biểu thức chính quy , đã được mở từ năm 2007. Họ sẽ phải thay đổi thư viện biểu thức chính quy mà họ sử dụng trước khi có thể sửa được và tôi chưa tìm thấy bất kỳ thông báo nào về thời điểm hoặc liệu họ sẽ thực hiện việc này.

Cách giải quyết duy nhất mà tôi đã thấy là tìm kiếm các chuỗi HEX cụ thể:

mysql> SELECT * FROM `content` WHERE HEX(`text`) REGEXP 'C3A9C588';
+----------+
| text     |
+----------+
| siréňa   |
+----------+

Nhận xét lại của bạn:

Không, tôi không biết bất kỳ giải pháp nào với MySQL.

Bạn có thể phải chuyển sang PostgreSQL, vì RDBMS đó hỗ trợ \u mã cho các ký tự UTF trong cú pháp biểu thức chính quy của chúng .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. tìm trong bộ ở laravel? ví dụ

  2. Android + MySQL bằng com.mysql.jdbc.Driver

  3. LỖI 2002 (HY000):Không thể kết nối với máy chủ MySQL cục bộ thông qua socket '/var/run/mysqld/mysqld.sock' (2)

  4. Thêm cột danh sách được đánh số vào truy vấn MySQL trả về

  5. MySQL InnoDB không giải phóng dung lượng đĩa sau khi xóa các hàng dữ liệu khỏi bảng