在編寫asp程式,通常是搭配使用access資料庫,一方面可能是為了攜帶,另一方面可能是因為小型專案。
此時,我們寫好的程式移動到別的伺服器後,
我們可能會遇到其中一種問題「無法用連線來執行此操作。內容可能已關閉或無效。」,
這是在asp程式中,所寫下的錯誤描述,
<%
if err then response.write (err.description)
%>
哇!這是什麼??
原來,這是因為伺服器有不同的位元(32bit,64bit)之分,
當您原來使用連線的句子:
connstr="DBQ="+server.mappath(""&db&"")+";Password=mypassword;DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
或
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=MyDbPassword;Data Source=" & Server.MapPath(""&db&"")
都失效了。
這時您必須去微軟下載[Microsoft Access Database Engine 2010 可轉散發套件]64位元版本,並將連線句子改成如下:
connstr="Provider=Microsoft.ACE.OLEDB.12.0;Jet OLEDB:Database Password=MyDbPassword;Data Source=" & Server.MapPath(""&db&"")
在64bit位元的伺服器才可以運作正常。
Microsoft Access Database Engine 2010 可轉散發套件:
http://www.microsoft.com/downloads/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=zh-tw
- Apr 09 Tue 2013 11:35
【ASP】無法用連線來執行此操作。內容可能已關閉或無效
close
全站熱搜
留言列表