Vb ADO 操作Access数据库(创建,添加,修改)

DAO(Data Access Object)全称为数据访问对象,它是数据库编程的重要方法之一。DAO的一种面向对象的界面接口,特色为它不是可视化的对象,使用它全部都要靠编码来完成,DAO是设计关系型数据库系统结构的对象类的集合。它提供了完成管理这样一个系统所需的全部操作的属性和方法,包括创建数据库,定义表、字段和索引,建立表间的关系,定位和查询数据库等工具。由于ADO(ActiveX Data Object ActiveX 数据对象)的出现,DAO的使用已大大减少,但它无须使用ODBC(开放数据库连接)便可连接各个数据源,因而我们仍经常用经典的DAO。下面我向大家详细介绍如何使用DAO编程。
  DAO使用之前必须先引用。方法为打开VB6.0 , VB工程菜单中,选择引用项,当引用对话框出现后,从库的列表中,选择“Microsoft DAO 3.51 Object Library”,单击确定。现在便可以使用DAO对象库提供的所有对象进行编程了。
  一、创建数据库:
  在DAO中用CreatDataBase方法可以根据用户需求动态的创建数据库。这一点在程序中是非常有用的。用户可以根据要求实时建立数据库。建立过程如下:  
  Private Sub Com_creat_Click()
  On Error GoTo Err100
  CreatDataBase “数据库名称.mdb” dbLangGeneral
  Msgbox “数据库建立完毕
  Exit Sub
  Err100:
  MsgBox “不能建立数据库! ” amp; vbCrLf amp; vbCrLf amp; Err.Description, vbInformation
  End Sub
  这样,数据库便在当前默认的路径下建立了。
  二、创建表与字段:
  建立数据库后,则需要在该数据库中建立表,这要用到TableDef 对象。先定义一个TableDef类型的对象,然后用TableDef集合中Append方法将之追加到数据库当中去。并且同时定义一个Field对象,用CreatFiele的方法创建一个Field对象,向表中添加字段。例如:
  Private Sub Com_table_Click()
  On Error GoTo Err100
  Dim Defdb As DataBase
  Dim NewTable As TableDef
  Dim NewField As Field
  Set Defdb = Workspaces(0).OpenDatabase (App.path amp; “\数据库名称.mdb” ,0, False)
  Set NewTable = DefDataBase.CreateTableDef(“表名“)
  Set NewField = DefTable.CreateField( “字段名” , dbText ,6) ′创建一个字符型的字段,长度为6个字符
  DefTableFields.Append NewField ′字段追加
  DefDatabase.TableDefs.Append NewTable ′表追加
  Msgbox ” 表建立完毕
  Exit Sub
  Err100:
  MsgBox “对不起,不能建立表。请先再建表前建立数据库?“, vbCritical
  End Sub
  一个数据库可能有十几个甚至几十个字段,一个表中有多少个字段,则要创建多少次并要追加到表中。每建立一个字段后都要用到字段追加命令,但是表追加只需在所有字段建立完成后用一条命令即可完成。

  三、打开数据库:
  在VB中,对一个对象变量引用之前必须加以说明。DAO也是如此,必须先声明数据库变量,例如:Dim dbase As Database 。建立了数据库对象变量后,我们便可打开数据库了,在一般情况下都只是访问一个数据库,当打开数据库后再对数据库中的各个记录进行操作,这就要用到Recordset 对象建立记录集。例如:    

Private Sub Command_OpenDatabase_Click()
  Dim dbase as Database
  Dim rs As Recordset
  Set dbase = OpenDatabase ( App.path amp; “\数据库名称.mdb” )
  Set rs = dbase.OpenRecordset ( ” select * from 表名 ” )
  End Sub
  这样,数据库中的记录便放到Recordset中,可以进行后续操作了。
  

四、使用数据库:
  当打开数据库,建立Recordset 记录集后,便可浏览、删除、添加、查找数据库中的内容。

You may also like...

发表评论