2014-03-02 56 views
1

我試圖從MS Access數據庫中創建一個ID(主鍵和自動增量)以用作登錄傳遞。但我收到此錯誤:ASP Classic - 數據類型不匹配錯誤

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

這裏是我的代碼:

con.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.MapPath("db.mdb") &"" 
sql="SELECT * FROM tblLogin WHERE ID='" & request.form("id") & "';" 

rs.CursorType=2 

rs.Open sql,con 

if rs.bof then 
    response.redirect "loginpage.asp?msg=ID does not exist." 
else 
    response.redirect "adminpage.asp" 
end if 

請糾正我,如果我失去了一些東西,或者你推薦任何解決方案。

在此先感謝。

+0

它看起來很像你發送ID爲一個字符串。它應該是一個整數嗎?如果這樣就放棄了撇號。 – StephenCollins

+0

噢,謝謝。我已經刪除了引號,並收到此錯誤:** [Microsoft] [ODBC Driver Manager]驅動程序的SQLSetConnectAttr失敗**。任何解決方案 – user3130849

+0

我可以看到你的sql =這行代碼 – StephenCollins

回答

3

變化:

sql="SELECT * FROM tblLogin WHERE ID='" & request.form("id") & "';" 

sql="SELECT * FROM tblLogin WHERE ID=" & request.form("id") 

然後檢查這樣的:

If rs.EOF then 
    response.redirect "loginpage.asp?msg=ID does not exist." 
else 
    response.redirect "adminpage.asp" 
end if 
+0

正如我已經建議的那樣... get的我的投票+1 – Lankymart