Vb.net &引用;调用的目标已引发异常。在vs 2010中
您好,当我试图保存数据以访问2007年数据库时,我遇到了错误,如“异常已被调用的目标抛出”我正在制作一个项目,从磅秤上取重量并将其保存到数据库请帮助我解决错误Vb.net &引用;调用的目标已引发异常。在vs 2010中,vb.net,Vb.net,您好,当我试图保存数据以访问2007年数据库时,我遇到了错误,如“异常已被调用的目标抛出”我正在制作一个项目,从磅秤上取重量并将其保存到数据库请帮助我解决错误 Try Dim PRO As String Dim CONNSTRING As String Dim COMMAND As String Dim MYCONNECTION As OleDbConnection = New OleDbConnection P
Try
Dim PRO As String
Dim CONNSTRING As String
Dim COMMAND As String
Dim MYCONNECTION As OleDbConnection = New OleDbConnection
PRO = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\weight.accdb;Persist Security Info=True;Jet OLEDB:Database Password=weight"
CONNSTRING = PRO
MYCONNECTION.ConnectionString = CONNSTRING
MYCONNECTION.Open()
COMMAND = "insert into entry ([weight1],[date1],[time1],[weight2],[date2],[time2],[netweight],[vehicleno],[name],[contactno],[productname],[charge],[paymentstatus]) values ('" & weight1.Text & "','" & date1.Text & "','" & time1.Text & "','" & weight2.Text & "','" & date2.Text & "','" & time2.Text & "','" & netweight.Text & "','" & vehicleno.Text & "','" & custname.Text & "','" & contact.Text & "','" & Product.Text & "','" & charge.Text & "','" & status.Text & "')"
Dim cmd As OleDbCommand = New OleDbCommand(COMMAND, MYCONNECTION)
cmd.Parameters.Add(New OleDbParameter("weight1", CType(weight1.Text, String)))
cmd.Parameters.Add(New OleDbParameter("date1", CType(date1.Text, String)))
cmd.Parameters.Add(New OleDbParameter("time1", CType(time1.Text, String)))
cmd.Parameters.Add(New OleDbParameter("weight2", CType(weight2.Text, String)))
cmd.Parameters.Add(New OleDbParameter("date2", CType(date2.Text, String)))
cmd.Parameters.Add(New OleDbParameter("time2", CType(time2.Text, String)))
cmd.Parameters.Add(New OleDbParameter("netweight", CType(netweight.Text, String)))
cmd.Parameters.Add(New OleDbParameter("vehicleno", CType(vehicleno.Text, String)))
cmd.Parameters.Add(New OleDbParameter("name", CType(custname.Text, String)))
cmd.Parameters.Add(New OleDbParameter("contactno", CType(contact.Text, String)))
cmd.Parameters.Add(New OleDbParameter("productname", CType(Product.Text, String)))
cmd.Parameters.Add(New OleDbParameter("charge", CType(charge.Text, String)))
cmd.Parameters.Add(New OleDbParameter("paymentstatus", CType(status.Text, String)))
MsgBox("Saved")
cmd.ExecuteNonQuery()
cmd.Dispose()
MYCONNECTION.Close()
weight1.Clear()
date1.Text = ""
time1.Text = ""
weight2.Clear()
date2.Text = ""
time2.Text = ""
netweight.Clear()
vehicleno.Text = ""
custname.Text = ""
contact.Text = ""
Product.Text = ""
charge.Clear()
status.Text = ""
weighttype.Focus()
Call ticket()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
按如下方式编写SQL代码:
COMMAND=“插入条目([weight1])值(@weight1)”
然后添加如下参数:
cmd.Parameters.Add(“@weight1”,OleDbType.VarChar,50)。Value=weight1.Text
在SQL中提供一个参数占位符,然后在添加该占位符时将其用作参数的名称。还指定数据类型,对于可变宽度类型,还指定大小。设置值
或刚添加的参数
当您使用ACE OLE DB提供程序时,参数名称实际上将被忽略,但为了代码的清晰性,您应该使用它们。您必须确保参数的添加顺序与它们在SQL代码中出现的顺序相同。这里混合了两个概念。提供参数的方式与命令查询不匹配。Text属性通常是字符串。您不需要CType()。