如何在vb.net中更新MS Access数据库
您好,我在使用vb.net更新一个表时遇到问题,当我单击按钮更新数据库时,它会给我错误“System.data.OleDb.OledBeException:没有为一个或多个必需参数提供值。” 这是密码如何在vb.net中更新MS Access数据库,vb.net,Vb.net,您好,我在使用vb.net更新一个表时遇到问题,当我单击按钮更新数据库时,它会给我错误“System.data.OleDb.OledBeException:没有为一个或多个必需参数提供值。” 这是密码 Protected Sub Button6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button6.Click Dim aConnection As New OleDbConnection
Protected Sub Button6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button6.Click
Dim aConnection As New OleDbConnection
Dim aCommand As New OleDbCommand
Dim SQLQuery, aConnectionString As String
Dim Text As String = TextBox1.Text
Dim aDataAdapter As New OleDbDataAdapter
Dim aDataReader As New DataSet
SQLQuery = "Update Review Set report='Yes' Where Text='" & Text & "'"
aConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Server.MapPath("App_Data/BookReviewWebsite.accdb")
aConnection = New OleDbConnection(aConnectionString)
aConnection.Open()
aCommand = New OleDbCommand(SQLQuery, aConnection)
aCommand.ExecuteNonQuery()
Label15.Text = "Review has been reported"
aConnection.Close()
End Sub
查看、报告和文本
。这里有两个字段和一个表名,您应该检查数据库是否有效地包含一个名为Review
的表,以及在此表中是否有两个名为report
和Text
的字段
如果您确实有这个表和这些字段,那么您需要用方括号括起单词TEXT
,因为单词TEXT是Access 2007中的保留关键字
最后,但并非最不重要的问题是查询字符串本身。以这种方式连接字符串可能会导致错误。如果“Text”变量中只有一个引号,那么结果可能是不可预测的,范围从语法错误到语法错误
非常感谢这真的救了我的命
SQLQuery = "Update Review Set report='Yes' Where [Text]=?"
aCommand = New OleDbCommand(SQLQuery, aConnection)
aCommand.Parameter.AddWithValue("@p1", Text)
aCommand.ExecuteNonQuery()