2011-10-12 82 views
0

我想使用Access 2010中的數據庫並嘗試使用ASP.NET連接它。目前,我正在使用Visual Studio 2010,Windows 7 x64,Office 2010 x86(但我已嘗試使用Office 2010 x64)並使用OleDb。我被告知,由於數據提供者,如果你有一個x64系統並不那麼容易。使用Windows 7連接ASP.NET與Access數據庫2010 x64

我已經嘗試了很多的連接字符串的這個代碼片段:

Protected Sub btnRegister_Click(sender As Object, e As EventArgs) Handles btnRegister.Click 
    Dim DBPath As String = "C:\Users\Rodrigo\Documents\Database1.accdb" 
    Dim cn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & DBPath & ";Persist Security Info=False;") 
    Dim cmd As New OleDbCommand 
    With cmd 
     .CommandText = "insert into Users (nome) values (" & Me.txtNome.Text & ")" 
     .Connection = cn 
     .Connection.Open() 
     .ExecuteNonQuery() 
     .Connection.Close() 
     .Dispose() 
    End With 
    cn.Dispose() 
End Sub 

我能得到是與上.ExecuteNonQuery()產生一個錯誤,認爲這需要一些論據Microsoft.ACE.OLEDB.12.0提供最遠。

什麼是正確的方式來插入數據在我的訪問數據庫使用ASP.NET給定我的設置?

+1

您有一個SQL注入漏洞。 – SLaks

+0

現在我不在乎,只要我的代碼運行 –

+0

這就是爲什麼它沒有運行。 – SLaks

回答

1

您需要使用SQL參數。

您正在向SQL中插入未加引號的字符串,導致無效的SQL。

+0

我該如何解決? –

+0

http://www.mikesdotnetting.com/Article/26/Parameter-Queries-in-ASP.NET-with-MS-Access – SLaks

相關問題