如何在ASP.NET VB中选择和插入Microsoft Access数据库(accdb)
大家好,我是asp.net新手,我想从数据库中选择数据并将数据存储在VB而不是C中的DataTable中,但我似乎不知道如何连接。有人能帮我连接access数据库吗?我迷路了,已经好几天了。如果不是,那没关系 谢谢你的阅读 布伦特如何在ASP.NET VB中选择和插入Microsoft Access数据库(accdb),asp.net,vb.net,ms-access,Asp.net,Vb.net,Ms Access,大家好,我是asp.net新手,我想从数据库中选择数据并将数据存储在VB而不是C中的DataTable中,但我似乎不知道如何连接。有人能帮我连接access数据库吗?我迷路了,已经好几天了。如果不是,那没关系 谢谢你的阅读 布伦特 基本上,有两种方法可以做到这一点。 一种是使用ADO access数据库对象,它有一个初始向导,可以帮助您将access数据库连接到程序,并为控件设置数据源, 或者你可以使用System.Data.OLEDb我更喜欢这个,因为它可以让我更好地控制我的系统 Dim ac
基本上,有两种方法可以做到这一点。 一种是使用ADO access数据库对象,它有一个初始向导,可以帮助您将access数据库连接到程序,并为控件设置数据源, 或者你可以使用System.Data.OLEDb我更喜欢这个,因为它可以让我更好地控制我的系统
Dim accessconn As New _
System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & pathofAccessFile)
Try
accessconn.Open()
MsgBox("Access succesfully connected")
accessconn.Close()
Return 0
Catch ex As Exception
accessconn.Close()
MsgBox("There is something wrong with the path provided.")
Return 1
End Try
不过,您需要了解如何使用OLEDb类,所以这里有一些东西可以帮助您。
请注意OLEDbCommandExecute SQL字符串、OLEDBDataAdapter将数据从DB传输到Datagridview和OLEDBDataReader,我使用它从数据库中选择数据
也许为了帮助您更好地理解您的问题,下面是一个我如何使用DataReader类的示例:
Public Sub AccesstoGridd(ByVal utos As String, ByVal pathh As String, ByVal gridd As DataGridView, ByVal ngalan As String)
Dim accessconn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & pathh)
Try
Dim sqlutos As New System.Data.OleDb.OleDbCommand(utos, accessconn)
Dim idcounter As Integer = 0
accessconn.Open()
Dim reader As System.Data.OleDb.OleDbDataReader
reader = sqlutos.ExecuteReader
While reader.Read
idcounter = idcounter + 1
gridd.Rows.Add(idcounter, reader(0), reader(1), reader(2), reader(3), reader(4), reader(5), ngalan)
End While
reader.Close()
accessconn.Close()
Catch ex As Exception
accessconn.Close()
MsgBox("There is something wrong with the Access file selected." & vbNewLine & ex.ToString, MsgBoxStyle.Exclamation, "MDB file unrecognized.")
End Try
End Sub
告诉我们你到目前为止都做了些什么…你得到了什么错误或者什么不起作用了?它说它缺少所需的参数?比如???HomeleSusers是一个用户名和密码表吗?您有一个相当无用的查询。你所要求的内容与WHERE子句中的内容完全相同……你不需要查询你已经知道的内容,只要删除WHERE,你就会得到所有用户的列表。错误是否来自SQL查询的连接部分?我的魔法8球说的是SQL查询-您需要在字符串参数中添加记号:其中Username='&p_strUserNAME&'和Password='&p_Password&',但它仍然像一个愚蠢的查询Yok您有没有办法给我一个dataadapter和Datareader中的示例?使用您提供的代码,您只是没有调用类的函数,以便dataAdapter可以工作。另外,您也没有创建OLEDBCommand变量。看看我的编辑
Public Sub AccesstoGridd(ByVal utos As String, ByVal pathh As String, ByVal gridd As DataGridView, ByVal ngalan As String)
Dim accessconn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & pathh)
Try
Dim sqlutos As New System.Data.OleDb.OleDbCommand(utos, accessconn)
Dim idcounter As Integer = 0
accessconn.Open()
Dim reader As System.Data.OleDb.OleDbDataReader
reader = sqlutos.ExecuteReader
While reader.Read
idcounter = idcounter + 1
gridd.Rows.Add(idcounter, reader(0), reader(1), reader(2), reader(3), reader(4), reader(5), ngalan)
End While
reader.Close()
accessconn.Close()
Catch ex As Exception
accessconn.Close()
MsgBox("There is something wrong with the Access file selected." & vbNewLine & ex.ToString, MsgBoxStyle.Exclamation, "MDB file unrecognized.")
End Try
End Sub