问VB.net向access数据库插记录的有关问题
问VB.net向access数据库插记录的问题
请帮忙看一下这个程序的问题
form内仅一个button控件,要求点击后向access数据库db1的表student插入数据
student表包含两个字段,studentnumber是数字型,name是文字型
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As OleDb.OleDbConnection
Dim cmd As OleDb.OleDbCommand
Dim dbname As String = "...\db1.mdb "
con = New OleDb.OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source= " & dbname)
con.Open()
'2.添加记录
cmd = New OleDb.OleDbCommand( "Insert into student(studentnumber,name) Values( '1111 ', 'jia ') ", con)
cmd.ExecuteNonQuery()
con.Close()
End Sub
启动调试后,在cmd.ExecuteNonQuery() 报错:
未处理的“System.Data.OleDb.OleDbException”类型的异常出现在 system.data.dll 中。
------解决方案--------------------
‘应该是数据库路径问题,你可以用我下面的写错误日志,在最顶头添加
Imports System.IO
‘然后到可执行文件的同一目录建立Err01.txt文件就可以看错误日志了
’如果db1.mdb放在可执行文件的同一目录则:
con = New OleDb.OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=db1.mdb ")
'如在可执行文件的上一级目录则就是你写的那路径
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim con As OleDb.OleDbConnection
Dim cmd As OleDb.OleDbCommand
Dim dbname As String = "...\db1.mdb "
con = New OleDb.OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source= " & dbname)
con.Open()
'2.添加记录
cmd = New OleDb.OleDbCommand( "Insert into student(studentnumber,name) Values( '1111 ', 'jia ') ", con)
cmd.ExecuteNonQuery()
con.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
WriteErr(ex)
End Try
End Sub
'写错误日志
Public Sub WriteErr(ByVal ex As Exception)
请帮忙看一下这个程序的问题
form内仅一个button控件,要求点击后向access数据库db1的表student插入数据
student表包含两个字段,studentnumber是数字型,name是文字型
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As OleDb.OleDbConnection
Dim cmd As OleDb.OleDbCommand
Dim dbname As String = "...\db1.mdb "
con = New OleDb.OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source= " & dbname)
con.Open()
'2.添加记录
cmd = New OleDb.OleDbCommand( "Insert into student(studentnumber,name) Values( '1111 ', 'jia ') ", con)
cmd.ExecuteNonQuery()
con.Close()
End Sub
启动调试后,在cmd.ExecuteNonQuery() 报错:
未处理的“System.Data.OleDb.OleDbException”类型的异常出现在 system.data.dll 中。
------解决方案--------------------
‘应该是数据库路径问题,你可以用我下面的写错误日志,在最顶头添加
Imports System.IO
‘然后到可执行文件的同一目录建立Err01.txt文件就可以看错误日志了
’如果db1.mdb放在可执行文件的同一目录则:
con = New OleDb.OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=db1.mdb ")
'如在可执行文件的上一级目录则就是你写的那路径
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim con As OleDb.OleDbConnection
Dim cmd As OleDb.OleDbCommand
Dim dbname As String = "...\db1.mdb "
con = New OleDb.OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source= " & dbname)
con.Open()
'2.添加记录
cmd = New OleDb.OleDbCommand( "Insert into student(studentnumber,name) Values( '1111 ', 'jia ') ", con)
cmd.ExecuteNonQuery()
con.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
WriteErr(ex)
End Try
End Sub
'写错误日志
Public Sub WriteErr(ByVal ex As Exception)