2012-10-22 283 views
1

我正在使用用PHP編寫的Intranet應用程序使用SQL服務器。爲了方便起見,我想爲網頁使用UTF8字符集(jQuery只支持utf8),但是存儲在我的sqlserver數據庫中的所有數據都在iso-8859-1中。 我可以只更改sqlserver和PHP之間的數據CONNECTION CHARSET(而不是數據存儲區字符集)嗎?也許只是用查詢標題?SQL服務器uft8連接

謝謝。

回答

1

SQL服務器僅存儲前綴爲N(如此NVARCHAR等)的表中的Unicode數據。這些以UCS-2格式存儲。 Windows SQLSRV驅動程序將在檢索時將這些列從UCS-2轉換爲UTF-8,保存時則相反。

但是,如果數據是ISO-8859-1(非N列),那麼您將需要自己轉換文本。我會建議在您的數據檢索方法上創建一個包裝函數,以將ISO-8859-1數據轉換爲UTF-8。