2014-10-27 107 views
0

我想通過經典的asp連接到一個網頁的數據庫資源我正在開發使用GoDaddy作爲託管服務,平行plesk作爲控制面板和控制我的數據庫GoDaddy爲我提供了一個phpmyadmin的頁面。經典的ASP/ADO連接到數據庫使用GoDaddy

這裏是我發現我不得不使用代碼:

<% 
Dim oConn 
Dim qry 
Dim connectstr 
Dim db_name 
Dim db_username 
Dim db_userpassword 
Dim db_server 
Dim oRs 
Dim fieldname 
Dim tablename 

db_server = "XXX" 
db_name = "XXX" 
db_username = "XXX" 
db_userpassword = "XXX" 
fieldname = "XXX" 
tablename = "XXX" 
connectstr = "Driver={SQL Server};SERVER=" & db_server & ";DATABASE=" & db_name & ";UID=" & db_username & ";PWD=" & db_userpassword 
Set oConn = Server.CreateObject("ADODB.Connection") 
oConn.Open(connectstr) 

qry = "SELECT * FROM " & tablename 

oRS = oConn.Execute(qry) 

Do until oRs.EOF 
    Response.Write(ucase(fieldname) & ": " & oRs.Fields(fieldname)) 
    oRS.MoveNext 
Loop 
oRs.Close 


oRs = nothing 
oConn = nothing 
%> 

但是我不能使它工作。 [這是通過我的瀏覽器加入的結果網頁](http://i.imgur.com/Cg3lnPv.png

它在我看來像一個語法錯誤,但我有點測試它,我什麼都看不到。

我一直在爲此掙扎大約5-10天,而我目前陷入困境。任何幫助將不勝感激。

添加: 我跟GoDaddy的技術支持交談過,我被告知他們根本沒有阻止我。

編輯: 我也試過這個代碼

Set strConnString=Server.CreateObject("ADODB.CONNECTION") 
connect = "Provider=SQLOLEDB;Data Source=XXX;UID=XXX; PWD=XXX; database=XXX;" 
strConnString.ConnectionString = connect 
strConnString.Open 

strConnString = nothing 

,但它一直沒有工作。這是絕望。

給出問題的線路是用兩個代碼打開與數據庫的連接的線路。第一種方法是oConn.Open(connectstr),第二種是strConnString.Open

+0

你就做你的Response.Write連接字符串來驗證它? – Dee 2014-10-28 01:10:28

+0

@Dee是的,但是它在oConn.Open(connectionstr)行 – Ssr1368 2014-10-28 02:22:05

+0

也崩潰了,在創建對象時缺少單詞「Set」,如Set oConn = Server.CreateObject(「ADODB.Connection」) – Dee 2014-10-28 07:07:26

回答

1

如果您有phpMyAdmin編輯您的數據庫,然後你的數據庫是MySQL的,而不是SQL服務器

驅動程序的V3.51連接字符串可以在這裏找到

http://www.connectionstrings.com/mysql-connector-odbc-3-51/

和V5 0.1在這裏

http://www.connectionstrings.com/mysql-connector-odbc-5-1/

顯然後來的版本更好,BU我已經看到幾個建議GoDaddy仍在使用舊版v3.51的問題。有更好的經典asp主機,即使在預算水平。

編輯

您是否啓用了友好的asp錯誤消息。如果您有RDP連接,這很容易,但如果您只有Plesk,則無法自行完成,因此您需要通過電子郵件發送技術支持。無論如何,一些行嘗試改變:

要創建Recordset對象使用

Set oRS = oConn.Execute(qry) 

然後,當你在最後的整理

oRS.Close 
oConn.Close 

Set oRS = Nothing 
Set oConn = Nothing 
+0

是的,你是對的,在掙扎的時候也注意到了。但是我仍然無法讓它工作。我想說這是因爲GoDaddy的限制,但它可能是我的錯,而不是確定。謝謝你的回答,投了票 – Ssr1368 2014-10-28 17:19:31

+0

我已經補充了我的答案 – John 2014-10-28 17:54:36

0

即使GoDaddy說你應該使用你的數據庫,如果你沒有得到你要使用他們自己的應用程序的保費計劃,看起來像。我使用OBDC工作,並通過DNS連接如下:

set conn=Server.CreateObject("ADODB.Connection") 
conn.Open "DSN=obdcName;UID=userName;PWD=password" 

希望這可以幫助任何人。