扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
在此本人使用ADO对象访问ACCESS数据库,但ADO对象在使用前你先要进行添加,启动VB6后,单击菜单“工程-引用”,打开引用对话框,选择“Microsoft ActiveX Data Objects 2.0 Library”,将其勾选,(以2.0版本为例,实际可以选择系统中的最高版本如本人的就是2.6版本),然后在当前目录下建立一个名为“学生”的ACCESS数据库,其中表名为“表”,字段共有:学号,姓名,年龄,性别四个字段,接下来就是设计界面了(自己设计)
成都创新互联专注于雁山网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供雁山营销型网站建设,雁山网站制作、雁山网页设计、雁山网站官网定制、微信小程序开发服务,打造雁山网络公司原创品牌,更为您提供雁山网站排名全网营销落地服务。
现在介绍如何使用代码访问ACCESS数据库:
在代码窗口中编写一个返回字符型的函数
Function Connection() As String
'数据库的连接设置配置
Connection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" App.Path + "\学生.mdb"
End Function
该函数用于连接数据库用
Private Form_Load()
Dim cnn As New ADODB.Connection
Dim Rst As New ADODB.Recordset
cnn.Open Connection
Set Rst = New ADODB.Recordset
Rst.Open "select * from 表", cnn, adOpenKeyset, adLockOptimistic
End Sub
注:
Dim cnn As New ADODB.Connection创建一个ADO数据库连接对象
Dim Rst As New ADODB.Recordset为创建一个ADO数据库记录对象
select * from 表 是SQL查询语言,这里为数据源,意思就是打开数据库“学生”中的表“表”
下面是将数据库表中的字段值显示出来的一个过程
Sub View()
Dim i As Integer
For i = 0 To 2
Text1(i) = Rst.Fields(i)'text1为控件数组
Next
If (Rst.Fields(3) = True) Then
Text1(3) = "男"
Else
Text1(3) = "女"
End If
End Sub
要访问ACCESS数据库就这样可以实现,访问SQL也差不多,稍有不同,回答完毕,如还有问题请继续和我联系,本人是专使用VB+SQL/Delphi+SQL开发数据库管理系统的程序员。
以下是完整模块
Imports
System.Data
Imports
System.IO
Imports
System.Data.OleDb
Module
Module1
Public
cn
As
New
OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
Application.StartupPath
"\mdb数据库名字.mdb")
'定义连接
Public
DataBaseRST
As
Integer
'用来返回数据库执行结果
Public
Function
DataModify(ByVal
str
As
String)
As
Boolean
'进行数据库修改操作
Dim
cmdinsert
As
New
OleDbCommand
Try
cmdinsert.CommandText
=
str
cmdinsert.Connection
=
cn
If
cn.State
=
ConnectionState.Closed
Then
cn.Open()
DataBaseRST
=
cmdinsert.ExecuteNonQuery()
'用来返回执行的结果
cn.Close()
Return
True
Catch
ex
As
Exception
MessageBox.Show(Err.Description,
"Error",
MessageBoxButtons.OK,
MessageBoxIcon.Error)
Return
False
End
Try
End
Function
Public
Function
Search(ByVal
str
As
String,
ByVal
DGV
As
DataGridView)
As
Boolean
'查询
str---查询命令,DGV---DataGridView,用来显示数据的控件
Dim
tb
As
New
DataTable
Try
Dim
ap
As
New
OleDb.OleDbDataAdapter(str,
cn)
ap.Fill(tb)
DGV.DataSource
=
tb
Return
True
Catch
ex
As
Exception
MessageBox.Show(Err.Description,
"Error",
MessageBoxButtons.OK,
MessageBoxIcon.Error)
Return
False
End
Try
End
Function
End
Module
'以下是调用方法
DataModify("
insert
into
aa
values
('1','2')")'-------这里是数据库更新操作
Search("select
bb
from
aa",DataGridView1)'-----------这里是数据表查询操作
1、首先,你得做一个oledbconnection对象,这个对象有个连接字符串的属性,你需要设置
2、做一个oledbcommand对象,这个对象有个操作字符串(SQL语句)需要设置
3、打开oledbconnection对象
4、执行oledbcommand对象
5、关闭oledbconnection对象
程序结束,希望对你有帮助
首先在项目的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.0;Jet OLEDB:Engine Type=5;Data Source= 数据库文件.mdb;Jet 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
使用向导设置数据库连接的好处是省去写代码的过程,弊端是不易更改连接
使用代码连接的好处是需要编写代码,但容易更改和维护
如:数据库的位置变化,直接更改代码显然容易一些
代码:
imports System.data.oledb /*引用命名空间*/
dim cnstr = "provider=microsoft.jet.oledb.4.0,data source=Access数据库文件位置" /*定义连接字符串*/
dim cn as oledbconnection = new oledbconnection(cnstr) /*定义连接*/
cn.open() /*打开连接*/
sqlstr="select... from... 或其他sql"
dim cmd as sqlcommand=new sqlcommand()
cmd.commandtext=sqlstr
cmd.connection=cn
/*以上是建立执行语句*/
cmd.executenonquery() 不返回结果
cmd.executescalar() 返回单个结果
cmd.executereader() 返回结果集
/*以上是执行sql语句的方法*/
cn.close() /*关闭连接*/
你要做用户验证的话,先根据用户名查询对应的密码,再判断用户输入的密码和查询结果是不是相同就可以了
用cmd.executescalar() 这个方法
1,使用ADO connection对象
首先,要建立ADO引用,定义connection这个类,然后实例化对象。
代码完成如下:
span style="font-size:18px;"Dim objCn As New Connection, objRs As New Recordset
objCn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;" "Data Source=" App.Path "\实例01.mdb"
objCn.Open
/span
2,使用ODBC数据源
首先,打开电脑上的ODBC数据源,建立关系。
步骤如下:
1),打开电脑上的ODBC数据源
如下图所示:
2)点击添加
3)命名
4)和数据库源建立关系
5)用代码实现连接
span style="font-size:18px;"
dim objCn As Connection
Set objCn = New Connection
objCn.Open "DSN=实例2DSN"
/span
3、ADO Data 控件创建连接
1)右击data控件,选择ADODC属性
2)从三种连接资源中选择一种。
使用data Link 文件:直接点击浏览,找到包含连接字符串的.udl文件即可
使用ODBC数据源连接,单击新建
选择用户数据库,之后的操作跟2中步骤一样。
使用连接字符串:单击生成
测试连接
4、使用数据环境设计器创建数据库连接
添加引用
右击创建连接,在右击想要连接的属性,之后的操作跟data控件中使用字符串中的操作一致
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流