mysql> SELECT LOCATE("n", "München") COLLATE utf8_general_ci;
ERROR 1253 (42000): COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'binary'
Làm cách nào để loại bỏ lỗi này?COLLATION 'utf8_general_ci' không hợp lệ đối với CHARACTER SET 'binary'?
Những gì tôi đã cố gắng (copy & dán):
$ mysql -u admin -p $DATABASE
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.69 Source distribution
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> SELECT LOCATE("n", "München") COLLATE utf8_general_ci;
ERROR 1253 (42000): COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'binary'
mysql> SET NAMES utf8;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT LOCATE("n", "München") COLLATE utf8_general_ci;
ERROR 1253 (42000): COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'binary'
mysql> SELECT LOCATE(_utf8"n", _utf8"München") COLLATE utf8_general_ci;
ERROR 1253 (42000): COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'binary'
mysql> SHOW VARIABLES LIKE "character_set_database";
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| character_set_database | utf8 |
+------------------------+-------+
1 row in set (0.00 sec)
Bảng nào? Truy vấn của tôi không tham chiếu đến một bảng. – feklee
Xin lỗi, một nửa ngủ ở đây. Tôi đã thay thế hoàn toàn câu trả lời. – Bobulous
Trước khi đặt câu hỏi, tôi đã thử 'SET NAMES utf8', và bây giờ một lần nữa, không thành công. The * giới thiệu * trông giống như một giải pháp tốt đẹp, nhưng họ không làm việc: Thông báo lỗi vẫn tồn tại. Tôi đã thử: 'SELECT LOCATE (_utf8" n ", _utf8" München ") COLLATE utf8_general_ci' Bằng cách này, tôi đang trực tiếp sử dụng giao diện điều khiển, để chơi xung quanh. Tôi bắt đầu giao diện điều khiển với: 'mysql -u admin -p $ database' Tôi chỉ chạy' hiển thị các biến như "character_set_database" '.Kết quả: 'utf8' – feklee