在VBasic中用DAO实现数据库编程_VB.net_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

在VBasic中用DAO实现数据库编程

作者:黑客防线网安VB教程基地 来源:黑客防线网安VB教程基地 浏览次数:0

本篇关键词:数据库编程实现记录
黑客防线网安网讯:  DAO(DataAccessObject)全称为数据访问对象,它是数据库编程的重要方法之一。DAO的一种面向对象的界面接口,特色为它不是可视化的对象,使用它全部都要靠编码来完成,DAO是设计关系型数据...
  DAO(DataAccessObject)全称为数据访问对象它是数据库编程的重要方法之一DAO的一种面向对象的界面接口,特色为它不是可视化的对象使用它全部都要靠编码来完成,DAO是设计关系型数据库系统结构的对象类的集合它提供了完成管理这样一个系统所需的全部操作的属性和方法,包括创建数据库,定义表、字段和索引,建立表间的关系,定位和查询数据库等工具。由于ADO(ActiveXDataObjectActiveX数据对象)的出现,DAO的使用已大大减少,但它无须使用ODBC(开放数据库连接)便可连接各个数据源,因而我们仍经常用经典的DAO。下面我向大家详细介绍如何使用DAO编程
  DAO使用之前必须先引用。方法为打开VB6.0,从VB的"工程"菜单中,选择"引用"项,当"引用"对话框出现后,从库的列表中,选择"MicrosoftDAO3.51ObjectLibrary",单击"确定"。现在便可以使用DAO对象库提供的所有对象进行编程了。
  一、创建数据库:
  在DAO中用CreatDataBase方法可以根据用户需求动态的创建数据库。这一点在程序中是非常有用的。用户可以根据要求实时建立数据库。建立过程如下:  
  PrivateSubCom_creat_Click()
  OnErrorGoToErr100
  CreatDataBase"数据库名称.mdb",dbLangGeneral
  Msgbox"数据库建立完毕"
  ExitSub
  Err100:
  MsgBox"不能建立数据库!"&vbCrLf&vbCrLf&Err.Description,vbInformation
  EndSub
  这样,数据库便在当前默认的路径下建立了。
  二、创建表与字段:
  建立数据库后,则需要在该数据库中建立表,这要用到TableDef对象。先定义一个TableDef类型的对象,然后用TableDef集合中Append方法将之追加到数据库当中去。并且同时定义一个Field对象,用CreatFiele的方法创建一个Field对象,向表中添加字段。例如:
  
  PrivateSubCom_table_Click()
  OnErrorGoToErr100
  DimDefdbAsDataBase
  DimNewTableAsTableDef
  DimNewFieldAsField
  SetDefdb=Workspaces(0).OpenDatabase(App.path&"数据库名称.mdb",0,False)
  SetNewTable=DefDataBase.CreateTableDef("表名")
  SetNewField=DefTable.CreateField("字段名",dBText,6)′创建一个字符型的字段,长度为6个字符
  DefTableFields.AppendNewField′字段追加
  DefDatabase.TableDefs.AppendNewTable′表追加
  Msgbox"表建立完毕"
  ExitSub
  Err100:
  MsgBox"对不起,不能建立表。请先再建表前建立数据库?",vbCritical
  EndSub
  一个数据库可能有十几个甚至几十个字段,一个表中有多少个字段,则要创建多少次并要追加到表中。每建立一个字段后都要用到字段追加命令,但是表追加只需在所有字段建立完成后用一条命令即可完成。   
  三、打开数据库:
  在VB中,对一个对象变量引用之前必须加以说明。DAO也是如此,必须先声明数据库变量,例如:DimdbaseAsDatabase。建立了数据库对象变量后,我们便可打开数据库了,在一般情况下都只是访问一个数据库,当打开数据库后再对数据库中的各个记录进行操作,这就要用到Recordset对象建立记录集。例如:  
  PrivateSubCommand_OpenDatabase_Click()
  DimdbaseasDatabase
  DimrsAsRecordset
  Setdbase=OpenDatabase(App.path&"数据库名称.mdb")
  Setrs=dbase.OpenRecordset("select*from表名")
  EndSub
  这样,数据库中的记录便放到Recordset中,可以进行后续操作了。
  四、使用数据库:
  当打开数据库,建立Recordset记录集后,便可浏览、删除、添加、查找数据库中的内容。
  1)向前浏览
    PrivateSubcmd_previous_Click()
  rs.MovePrevious
  ifrs.BOF=Truethen
  rs.Movelast
  Endif
  fori=0to11
  label(i).caption=rs.F
  2)向后浏览 
  PrivateSubcmd_next_Click()
  rs.MoveNext
  Ifrs.EOF=Truethen
  rs.MoveFirst
  Endif
  fori=0to11
  label(i).caption=rs.Fields(i)&""
  next
  EndSub
  3)删除记录
  PrivateSubcmd_del_Click()
  OnErrorGoTohandle
  Dimmsgasstring
  msg="是否要删除记录"&Chr$(10)
  msg=msg&label(0)′把删除记录的代号加入msg中
  IfMsgbox(msg,17,"删除记录")<>1ThenExitsub
  rs.delete
  rs.Movenext
  Ifrs.EOF=TrueThen
  rs.MovePrevious
  Endif
  fori=0to11
  label(i).caption=rs.Fields(i)&""
  next
  handle:
  MsgBox"该记录无法删除!!!"
  ExitSub
  EndSub
  4)添加记录
  向数据库中添加记录比较麻烦一点,大致分为三步:首先,用AddNew方法向数据库添加一个新的空白记录;其次,将要输入的数据分别赋到数据库的各个字段中;最后,用Updata的方法,把记录写到数据库中去。例如: 
  PrivateSubcmd_new_Click()
  rs.AddNew
  Fori=0to11
  rs.Fields(i)=TextBox(i).Text
  Next
  rs.Updata
  EndSub
  5)查找记录
  查找记录可以用Find方法,例如:  
  PrivateSubCmd_search_Click()
  Setrs=dbase.openRecordset("表名",dbopenDynaset)
  rs.findfirst"字段名='"&Text.Text&"'"′Text.Text是输入的关键字
  ifrs.Nomatch=Truethen
  Msgbox"对不起,没有该记录"
  else
  Fori=0to11
  label(i).caption=rs.Fields(i)&""
  Next
  Endif
  rs.close
  EndSub
  以上只是大致介绍了DAO的一些最常用、最典型的用法,真正要熟练掌握它需要不懈的努力。当你很好的理解了DAO后,对学习新的RDO和ADO也有很大的帮助。并且DAO和ADO可以同时使用,DAO的缺陷在于查找功能不强,没有ADO方便,但动态创建数据库却远超ADO,因此有时二者结合更强大。我们相信DAO一定会帮你节约宝贵时间,为工作提供方便。
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-14952-1.html
网站维护教程更新时间:2012-04-03 01:17:01  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer