加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

VB怎样用ADO创建.mdb数据库?

(2018-03-29 20:59:35)
分类: VB
VB 怎样用ADO创建.mdb数据库?
━━━━━━━━━━━━━━━━━━━━━━━━━

首先在VB中新建一个窗体,然后在“工程”菜单中引用对象库
“Microsoft ActiveX Data Objects 2.5 Library”

“Microsoft ADO Ext 2.1. For DDL Security”。

接着定义三个窗体级的对象变量和一个窗体级的字符串变量,它们的具体定义是:
Dim cat As New ADOX.Catalog      ’不用cat用另外一个名字也可以
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim pstr As String      ’定义该变量是为了后面的书写方便

为了更灵活地创建数据库,我们可以在窗体中加入一个通用对话框、一个DataGrid控件,三个命令按钮,它们的标题分别是:创建数据库和表、查看、更新。通用对话框的作用是给用户输入数据库文件名和决定数据库的存放位置。 

“创建数据库和表”命令按钮对应的代码是:
Private Sub Command1_Click()
    
Dim fm As String          'fm变量用来获取用户输入的文件名
    
CommonDialog1.Filter "MDB文件(*.mdb)|*.mdb|AllFiles(*.*)|*.*|"
    CommonDialog1.FilterIndex 1
    CommonDialog1.InitDir "D:Jthpaper"
    CommonDialog1.Flags 6
    CommonDialog1.Action 2
    If CommonDialog1.FileName "" Then
        MsgBox 
"你必须输入一个文件名,请重新保存一次!"
        Exit Sub
    Else
        
fm CommonDialog1.FileName
    End If
    
pstr "rovider=Microsoft.Jet.OLEDB.4.0;  '不能把这里的4.0改为3.51
    
pstr pstr "Data Source=fm
    cat.Create pstr          '创建数据库
    
Dim tbl As New Table
    cat.ActiveConnection pstr
    tbl.Name "MyTable"          '表的名称
    
tbl.Columns.Append "编号", adInteger        '表的第一个字段
    
tbl.Columns.Append "姓名", adVarWChar,      '表的第二个字段
    
tbl.Columns.Append "住址", adVarWChar, 50      '表的第三个字段
    
cat.Tables.Append tbl        '建立数据表
    
conn.Open pstr
    rs.CursorLocation adUseClient
    rs.Open "MyTable", conn, adOpenKeyset, adLockPessimistic
    rs.AddNew        '往表中添加新记录
    
rs.Fields(0).Value 9801
    rs.Fields(1).Value "孙悟空"
    rs.Fields(2).Value "广州市花果山"
    rs.Update
End Sub

上面程序中有一个需要说明的地方,这就是语句:pstr "rovider=Microsoft.Jet.OLEDB.4.0;",这个语句表示Microsoft Jet OLEDB驱动程序的版本是4.0,这是目前最新的版本,利用它你可以用VB中的ADO对象访问Access2000及其以下版本所建立的数据库。你不能把这里的“4.0”改为“3.51”,否则程序不能正常运行;

在VB6中,3.51版本的Microsoft Jet OLEDB驱动程序对应的是Access97数据库。换而言之,用这种方法建立的数据库和表跟用Access2000所建立的数据库和表是同一类型的,你只能直接用Access2000来打开,虽然你可以用VB6来访问这种数据库和其中的数据表,但你不能用Access97或VB6中的“可视化数据管理器”来直接打开。

在程序运行时只要用户单击该命令按钮就可以创建自己所需的数据库。

“查看”命令按钮对应的代码是:
Private Sub Command3_Click()
    
Set DataGrid1.DataSource rs
End Sub

“更新”命令按钮对应的代码是:
Private Sub Command4_Click()
    
rs.UpdateBatch
End Sub

我们这个实例只是用来说明问题。实际应用中可适当修改。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有