如果你真的逼不得已要用 ASP 透過 ADO 與 SQL Native Client 連接 SQL Server 2005 的話,在設定連線參數的地方一定要特別注意,否則會發生問題。
我有個朋友最近就發生這個問題,他使用 ASP 連接資料庫,但因為他的網站主機連接資料庫的 Driver 被改成 SQL Native Client 了,導致程式完全無法讀出欄位格式為 Text 或 NText 的欄位內容,網站的內容變成空白一片,且怎麼改程式都無法解決。
原來只要在連線參數的地方加上 DataTypeCompatibility=80 就可以解決問題了,如下:
Dim con As New ADODB.Connection
con.ConnectionString = "Provider=SQLNCLI;" _
& "Server=(local);" _
& "Database=AdventureWorks;" _
& "Integrated Security=SSPI;" _
& "DataTypeCompatibility=80;" _
& "MARS Connection=True;"
con.Open
也許還有在寫 ASP 的人可以參考一下,因為這應該是資料庫升級到 SQL Server 2005 之後就一定會發生的問題。
相關連結