国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

ASP連接數據庫報錯的幾種原因

2016-04-19 15:03:39 4183

ASP連接數據庫的方法一般有兩種,分別是使用OLE DB字符串建立和使用ODBC字符串建立。一般和ASP配套的數據庫就是Access和SQLServer,小型網(wǎng)站尤其以Access數據庫為多。很多客戶(hù)在自己編程的過(guò)程中,對數據庫連接代碼一直搞不清楚如何來(lái)寫(xiě),造成程序運行后提示各種各樣的錯誤。本篇文章就幫助大家解決ASP連接數據庫的各種問(wèn)題。


一個(gè)典型的錯誤是不能打開(kāi)注冊表關(guān)鍵字,?體出錯信息如下:

Microsoft OLE DB Provider for ODBC Drivers 錯誤 '80004005'
[Microsoft][ODBC Microsoft Access Driver]常見(jiàn)錯誤 不能打開(kāi)注冊表關(guān)鍵字 'Temporary (volatile) Jet DSN for process 0x530 Thread 0x13f8 DBC 0x2167024 Jet'。

正確的連接數據庫代碼應該怎么寫(xiě)呢?下面給出示例代碼:

1、ASP連接SQLServer數據庫

Set conn=Server.CreateObject("ADODB.Connection")
connstr="Provider=SQLOLEDB;Server=local;UID=sa;PWD=123;DataBase=mydb"
conn.Open connstr

其中Server是SQLServer數據庫的地址,如果和空間在一臺服務(wù)器就用local,不在一臺服務(wù)器就用IP地址。UID是數據庫用戶(hù)名,PWD是數據庫密碼,DataBase是數據庫名。

2、ASP連接Access數據庫

Set conn=Server.CreateObject("ADODB.Connection")
'使用OLE DB字符串建立
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=指向mdb的物理路徑"
'使用ODBC字符串建立
connstr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=指向mdb的物理路徑"
conn.Open connstr

兩種connstr字符串任選其一,指向mdb的物理路徑要用Server.Mappath()函數。比如數據庫文件的位置是/db/mydb.mdb,?么就可以寫(xiě)成Server.Mappath("/db/mydb.mdb")??傊?,這個(gè)函數的功能是把相對路徑轉換成絕對路徑。

數據庫連接代碼報錯的原因有很多,客戶(hù)可以從以下幾個(gè)方面來(lái)分析。

1、數據庫連接代碼是否正確。如果是SQLServer數據庫,仔細檢查數據庫主機、數據庫用戶(hù)名、數據庫密碼以及數據庫名這四個(gè)關(guān)鍵參數是否正確。如果是Access數據庫,則檢查是否使用了數據庫的絕對路徑,必要的時(shí)候把connstr連接字符串用Response.Write輸出看一下是否符合ASP語(yǔ)法。

2、Access數據庫是否有讀寫(xiě)權限。程序運行過(guò)程中,不可避免的要讀寫(xiě)Access數據庫。比如用戶(hù)注冊,添加新聞,刪除消息,都是對數據庫的讀寫(xiě),所以整個(gè)網(wǎng)站的權限一定要設置好?,F在大部分空間商默認都是開(kāi)通讀寫(xiě)權限的,除非您不小心在空間管理面板中關(guān)閉了寫(xiě)入權限。

3、還有一種情況,就是空間滿(mǎn)了。在排查了各種可能的原因之后,仍然報數據庫連接錯誤,則很有可能是空間已經(jīng)滿(mǎn)了。因為大部分虛擬主機都是采用磁盤(pán)配額,對空間的容量有嚴格限制。如果空間已經(jīng)滿(mǎn)了,不僅通過(guò)FTP無(wú)法上傳任何文件,數據庫連接的時(shí)候也同樣會(huì )報錯。


提交成功!非常感謝您的反饋,我們會(huì )繼續努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題:
-->