2017-10-09 94 views
1

我在本地数据库(测试系统)中使用外部数据库(只读)。Laravel中正确字符和归类的MySQL设置

因此,每次从外部数据库获取数据时,都会收到以下类似“ ”的默认空字符的异常警告。

在我的情况下,我应该如何修改数据库设置?谢谢。


(3/3)QueryException

SQLSTATE [HY000]:常规错误:错误1366字符串值: '\ xF8peri ......' 在第1行(SQL列 'CUSTOMER_NAME':插入customersidcustomer_namecustomer_email)值(10008,奥尔森Naen Klistpe AS,[email protected]))


外部DB

character_set_client字符= UTF8

是character_set_connection = LATIN1

character_set_database = UTF8

character_set_filesystem =二进制

character_set_results = LATIN1

被character_set_server = UTF8

character_set_system = UTF8

collat​​ion_connection是= utf8_general_ci

collat​​ion_database查看= latin1_swedish_ci

collat​​ion_server的= latin1_swedish_ci

服务器MySQL版本5.1。


内部DB

character_set_client字符= utf8mb4

是character_set_connection = utf8mb4

character_set_database = utf8mb4

character_set_filesystem =二进制

character_set_results = utf8mb4

被character_set_server = LATIN1

character_set_system = UTF8

collat​​ion_connection是= utf8mb4_general_ci

collat​​ion_database查看= utf8mb4_unicode_ci

collat​​ion_server的= latin1_swedish_ci

服务器MySQL版本19年5月7日


测试系统Enviroments: Win10,WAMPSERVER(MySQL的v5.7.19,PHP v7.1.9)

+0

Dup of https://stackoverflow.com/questions/46640891/db-collat​​ion-and-chartset-setting-in-mysql-in- laravel –

回答

0

\ XF8是一种统一的,它不与拉美和latin_swedish字符集工作。您必须将您的字符集更新为UTF8或UTF8mb4,并将其归类为utf8_general_ci或utf8mb4_general_ci

+0

谢谢..我可以在哪里更新服务器?只是外部数据库或两者?在我的情况下,我无法更新外部数据库,它只能阅读。 – Magnetic

+0

最好的是更新它们,但是你可以先尝试配置内部数据库。在my.cnf中配置它。 https://dev.mysql.com/doc/refman/5.7/en/option-files.html – edisonthk