VB.net在数据库中添加新条目出错,该怎么解决
VB.net在数据库中添加新条目出错
我在编写一个VB.net和sql2000的供销存管理系统,需要通过VB.net对数据库进行操作,但是当我往数据库里添加条目时,出现提示:调用的目标出现异常,但是并没有提示哪一行出错,请问我应该在怎么办?我是用sqldataconnetion连接的,具体代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim myconn = New SqlClient.SqlConnection("integrated security=SSPI;data source=PC326109580197;initial catalog=DEL1362")
Dim mysql As String = "insert into 采购订单1362 values('" & Me.TextBox6.Text & "','" & Me.TextBox1.Text & "','" & Me.TextBox5.Text & "','" & Me.TextBox4.Text & "','" & Me.TextBox2.Text & "','" & CDate(Me.DateTimePicker1.Text) & "' ,'" & CDate(Me.DateTimePicker2.Text) & "',0)"
Dim mycmd As New SqlClient.SqlCommand(mysql, myconn)
If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox6.Text = "" Or TextBox4.Text = "" Or TextBox5.Text = "" Or DateTimePicker1.Text = "" Or DateTimePicker2.Text = "" Then
MsgBox("信息不全,请补全!!", 48, "警告")
Else
Dim i As Integer
i = MsgBox("确定要添加采购订单号为" & Trim(TextBox6.Text) & "的采购订单信息?", MsgBoxStyle.OKCancel)
If i = 1 Then
Try
myconn.Open()
mycmd.ExecuteNonQuery()
MsgBox("添加成功!!", 48, "采购订单")
myconn.Close()
Catch ex As Exception
MsgBox(ex.Message, 48, "警告")
End Try
End If
End If
End Sub
------解决方案--------------------
这2句的问题:
myconn.Open()
mycmd.ExecuteNonQuery()
原因:
myconn.Open() 可能当前数据库用户权限不能写数据库或连接数据库异常
mycmd.ExecuteNonQuery() 可能要插入的列值跟列顺序或个数不匹配,最好insert into (字段列表) values(值列表)
我在编写一个VB.net和sql2000的供销存管理系统,需要通过VB.net对数据库进行操作,但是当我往数据库里添加条目时,出现提示:调用的目标出现异常,但是并没有提示哪一行出错,请问我应该在怎么办?我是用sqldataconnetion连接的,具体代码如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim myconn = New SqlClient.SqlConnection("integrated security=SSPI;data source=PC326109580197;initial catalog=DEL1362")
Dim mysql As String = "insert into 采购订单1362 values('" & Me.TextBox6.Text & "','" & Me.TextBox1.Text & "','" & Me.TextBox5.Text & "','" & Me.TextBox4.Text & "','" & Me.TextBox2.Text & "','" & CDate(Me.DateTimePicker1.Text) & "' ,'" & CDate(Me.DateTimePicker2.Text) & "',0)"
Dim mycmd As New SqlClient.SqlCommand(mysql, myconn)
If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox6.Text = "" Or TextBox4.Text = "" Or TextBox5.Text = "" Or DateTimePicker1.Text = "" Or DateTimePicker2.Text = "" Then
MsgBox("信息不全,请补全!!", 48, "警告")
Else
Dim i As Integer
i = MsgBox("确定要添加采购订单号为" & Trim(TextBox6.Text) & "的采购订单信息?", MsgBoxStyle.OKCancel)
If i = 1 Then
Try
myconn.Open()
mycmd.ExecuteNonQuery()
MsgBox("添加成功!!", 48, "采购订单")
myconn.Close()
Catch ex As Exception
MsgBox(ex.Message, 48, "警告")
End Try
End If
End If
End Sub
------解决方案--------------------
这2句的问题:
myconn.Open()
mycmd.ExecuteNonQuery()
原因:
myconn.Open() 可能当前数据库用户权限不能写数据库或连接数据库异常
mycmd.ExecuteNonQuery() 可能要插入的列值跟列顺序或个数不匹配,最好insert into (字段列表) values(值列表)