這裡僅以ASP為例,asp.net根據不同語言(VBScript, C#等可能略有差異)調整相關語句即可。
1. 無法串連資料庫相關的錯誤:
(1)資料庫連接字串有誤:
有人使用:
connstr="DBQ="+server.mappath("../data/dbname.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
這個不太具有通用性,有時會在一些伺服器上出錯。使用以下連接字串更好一些:
connstr="provider=microsoft.Jet.OLEDB.4.0;data source='" & Server.Mappath("../data/dbname.mdb") & "'"
(2)有時還會遇到錯誤,常見的出錯原因可能為資料庫的父目錄問題,諸如上述的"../data/dbname.mdb",它是指向目前的目錄的上一級目錄下的某個目錄下的資料庫檔案或直接的資料庫檔案),由於Server 2003 IIS的設定問題,需要點擊所屬網站右鍵 - 屬性 - 主目錄選項卡再點擊“配置”,在應用程式配置的“選項”選項卡上點中“啟用父路徑”。
2、資料庫連接正確了,但仍然無法更新?
常見的具體錯誤資訊可能為:
(1)Microsoft JET Database Engine (0x80040E09) 不能更新。資料庫或對象為唯讀
(2)Microsoft OLE DB Provider for ODBC Drivers (0x80004005)[Microsoft][ODBC Microsoft Access Driver] 操作必須使用一個可更新的查詢。
(3)Microsoft JET Database Engine (0x80004005) 操作必須使用一個可更新的查詢。
原因:資料庫許可權問題引起。
解決辦法有以下幾種(針對不同的伺服器可能解決辦法不一樣,在這裡假設網站主目錄為wwwroot):
A、在wwwroot檔案夾上面點擊右鍵-“屬性”-取消“唯讀”,此方法最簡單、偶爾有效。
B、在您的資料庫檔案上檔案夾上面點擊右鍵-“屬性”-“安全”-添加使用者:“IUSR_電腦名稱” 並開放“IUSR_電腦名稱”的讀取、寫入許可權。
註:XP系統下可能點擊右鍵看不到“安全”選項,請先開啟“工具”-“檔案夾選項”-“查看”-取消“使用簡單檔案分享權限設定(推薦)” 然後即可在屬性中找到“安全”選項。
C、在wwwroot檔案夾上面點擊右鍵-“屬性”-“web共用”-“共用資料夾”
如果是在Server2003中,還有可能的錯誤及解決方案是:
asp.net無法運行,很可能是以下原因:
1、IIS沒有啟用或沒有安裝(解決辦法:安裝並配置好IIS的設定);
2、沒安裝.net架構(解決辦法:安裝.net相關版本);
3、.net的相關服務沒有啟用(“電腦管理 - 服務和應用程式 - IIS管理器 - Web服務擴充”中啟用asp,asp.net等服務)。
4、路徑或許可權問題(見上述)。