因为可能很安静,我对SQL查询的经验很少。
我在我的Vb.net应用程序中生成以下查询时出现问题
UPDATE Payments SET B1Code = '12345', ARInvoice = '54321', INV2Go = '00000' WHERE PatientID = '400' AND Product = 'Consultation' AND Catagory = 'Orthotics'
(我在数据库中创建了与上述信息匹配的测试记录)
使用vb.net中的以下代码构建它:
Dim query As String = "UPDATE Payments SET B1Code = '" & txtB1Code.Text & "', ARInvoice = '" & txtARInvoice.Text & "', INV2Go = '" & txtInv2GoCode.Text & "' WHERE PatientID = '" & Integer.Parse(txtID.Text) & "' AND Product = '" & txtProduct.Text & "' AND Catagory = '" & txtPatientType.Text & "'"
然后传递我的执行查询函数,如下所示:
DatabaseFunctions.ExecuteQuery(query)
和功能:
Public Shared Sub ExecuteQuery(ByVal SQL As String)
CheckConnection()
Dim cmd As New OdbcCommand(SQL, con)
cmd.ExecuteNonQuery()
End Sub
该功能完美运行,我已经一次又一次地使用它来创建/编辑记录,使用以上述类似方式构建的简单SQL查询。问题是这个特定查询返回错误:
错误[07002ض] [Microsoft] [ODBC Microsoft Access Driver]参数太少。预计1。
也许比我有更多sql经验的人可以看到我缺少的东西?
谢谢
答案 0 :(得分:1)
此错误表示您在查询中使用的其中一列不存在。
再次检查您的查询:您的意思是Catagory
或Category
?