2017-10-09 90 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