vb.net 怎么 *** 作数据库

vb.net 怎么 *** 作数据库,第1张

如果楼主熟悉VB6,可以直接在项目中添加ADODB的Com引用,这样你就可以像VB6那样 *** 作数据库了!

另外

.NET Framework中连接数据库要用到ADO.NET。如果要 *** 作Access数据库,要用到System.Data.OleDb命名空间下的许多类。

比如按楼主所说,“我想在textbox1中显示表一中【一些数据】字段下的第一个内容”:

'首先导入命名空间

Imports System.Data

Imports System.Data.OleDb

'然后在某一个事件处理程序中写:

Dim conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0Data Source=数据库.accdbJet OLEDB:Database Password=MyDbPassword")

Dim command As New OleDbCommand("Select * From 数据表", conn)

conn.Open() '打开数据库连接

Dim reader As OleDbDataReader = command.ExecuteReader() '执行SQL语句,返回OleDbDataReader 对象

Do While reader.Read() '读取一条数据

textbox1.Text += reader("一些数据") &VbCrLf

Loop

reader.Close() '关闭OleDbDataReader

conn.Close() '关闭连接

首先在项目的VB.NET界面,使用菜单【项目】--【添加引用】--【COM】

选择  Microsoft ADO Ext. 2.x for DDL and Security

然后单击【确定】,完成引用。

完整代码如下:

Imports ADOX

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        '创建空的access数据库文件--数据库文件.mdb,密码为123

        Dim Mycat As Catalog = New Catalog()

        Mycat.Create("Provider=Microsoft.Jet.OLEDB.4.0Jet OLEDB:Engine Type=5Data Source= 数据库文件.mdbJet OLEDB:Database Password=123")

        '以下代码创建一个名为“实验数据表”

        Dim MyTable As ADOX.Table = New ADOX.Table         '定义新表

        MyTable.Name = "实验数据表"    '表命名

        '给表“实验数据表” 创建一个字符串字段,字段名“姓名”

        MyTable.Columns.Append("姓名", , ADOX.DataTypeEnum.adWChar)

        '给表“实验数据表” 创建一个整数字段,字段名“学号

        MyTable.Columns.Append("学号", ADOX.DataTypeEnum.adInteger)    '追加一个数字型字段

        '给字段“学号”创建一个主键“PimaryKey_Field”        

        MyTable.Keys.Append("学号", ADOX.KeyTypeEnum.adKeyPrimary, "学号")

        Mycat.Tables.Append(MyTable) '把所有的新字段追加到表

        MyTable = Nothing

        Mycat = Nothing

    End Sub

End Class

使用OleDb将数据库绑定datagridview,然后添加RowHeaderMouseClick事件,在此事件中定义选中某一行后在textbox中显示相应的数据,在添加的按钮中定义打开form2,用sql语句查询数据库得到想要的关键字所关联的数据,显示出来就可以了。这里我给你一部分我写过的代码,基本上和你的要求很像,但是不完全一样,你自己研究研究,改改应该就可以了。

'datagridview绑定数据库

Public Class form1

Private ObjetConnection As OleDbConnection

Private ObjetCommand As OleDbCommand

Private ObjetDataAdapter As OleDbDataAdapter

Private ObjetSet As New DataSet()

' SQL语句

Private strSql As String

Private ObjetDataTable As DataTable

Private ObjetDataRow As DataRow

Private Numeroligne As Integer

'定义路径

Private strConn As String

Private ObjetCommandBuilder As OleDbCommandBuilder

Dim dv As New DataView

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

strConn =

"Provider=Microsoft.ACE.OLEDB.12.0Data source=" &Application.StartupPath &"\文件名.accdb" /此处文件路径

strSql =

"Select * 表名 "

ObjetConnection =

New OleDbConnection()

ObjetConnection.ConnectionString = strConn

ObjetConnection.Open()

ObjetCommand =

New OleDbCommand(strSql)

ObjetDataAdapter =

New OleDbDataAdapter(ObjetCommand)

ObjetCommand.Connection() = ObjetConnection

ObjetDataAdapter.Fill(ObjetSet,

"表明")

dv.Table = ObjetSet.Tables(

"表名")

DataGridView1.DataSource = dv

 

ObjetConnection.Close()

End Sub

/此处是RowHeaderMouseclick事件

Private Sub DataGridView1_RowHeaderMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView1.RowHeaderMouseClick

此处添加显示表中相应信息

Me.TextBox1.text = DataGridView1.SelectedRows(0).Cells(0).Value

Me.TextBox2.text = DataGridView1.SelectedRows(0).Cells(1).Value

.........

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9928612.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存