另外顺带请教一下版主
我用的更新数据库的两种办法,需要注意什么样的问题,有时候更新会出现异常,就像上面的问题
方法(1)
定义Da,Ds,DBCmd ,写好SQL语句,用Da.fill(ds)填充数据,都正常,就是说,Ds中的数据一切正常
然后,通过例如:Ds.tables(0).row(0).Item(0)="abcd" 之类的语句修改了数据源,在调用Da.update(ds)更新
出现一个问题,有的数据库更新正常,但有的就会提示出错,"需要填充Update语句"或者"需要填充Insert语句"
我一时还没看出2个表之间,有什么不同。
方法(2)
用executeNonQuery命令
例如:
先定义了一个函数,方便调用
Public Function ExecuteQuery(ByVal sqlstr As String) As Boolean
Dim sqlconn As New OleDbConnection(ConnectStr)
Try
Dim cmdTable As OleDbCommand = New OleDbCommand(sqlstr, sqlconn)
cmdTable.CommandType = CommandType.Text
sqlconn.Open()
cmdTable.ExecuteNonQuery()
sqlconn.Close()
Catch
MessageBox.Show(Err.Description)
Return False
End Try
Return True
End Function
再调用 :
str = "Insert Into login(username,password) values ('" & textbox1.text & "','" & TextBox2.Text & "')"
If ExecuteQuery(upstr) = True Then
MessageBox.Show("插入成功!", "信息提示", MessageBoxButtons.OK)
Else
MessageBox.Show("插入失败!", "错误提示", MessageBoxButtons.OK)
End If
然后出现,前面我提的问题,调用该函数处理不同的表,只有一个表能正确运行,其它都提示“语法错误”
请版主不吝赐教,这都是我们刚学习的人会遇到的问题!!
谢谢!