如何使用Python 和PHP 確保MySQL 的Unicode 相容性
在《高效能針對MySQL》一書中,針對在查詢中使用“SET NAMES UTF8”。這個語句是有問題的,因為它只影響伺服器字元集,而不影響客戶端庫的字元集。
Unicode 相容性的替代方法
建立Unicode 感知的資料庫工作流程在PHP 和Python 中,建議使用下列方法:
mysql_set_charset() (PHP):
mysqli_set_charset() (PHP):
PDO::mysql (PHP/Python):
這些函數會導致 MySQL API 呼叫,也就是比發出「SET NAMES」查詢更快。
伺服器設定(效能最佳)
確保 UTF-8 相容性的最快方法是適當設定 MySQL 伺服器。 「SET NAMES x」相當於:
SET character_set_client = x; SET character_set_results = x; SET character_set_connection = x;
為了避免與伺服器上的其他應用程式發生衝突,請考慮在 my.ini/cnf 設定檔中靜態設定這些變數。
注意:請注意,更改伺服器的字元集可能會影響依賴不同字元集的其他應用程式。
以上是如何使用 Python 和 PHP 在 MySQL 中實現 Unicode 相容性:伺服器配置與客戶端解決方案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!