该怎么办呢难哦 发表于 2002-11-4 11:32:00

VBA与access数据库如何连接?做零件库时如何取值?

使用ADO的方法如何存取ACCESS数据库?对于ADO对象属性我都看的不明白,有哪位大侠能具体指教吗?

leeyeafu 发表于 2002-11-4 12:52:00

ADO数据库读取有很多办法,在这告诉你一个比较简单的。
Dim db As Database'在ACAD VBA中,ACAD图形数据库也用Database类,你须在工程中引用Microsoft DAO 3.51 Object Library库,并将其优先级提高到仅次于AutoCAD类型库。
Dim rst As Recordset 'rst为数据库记录集对象
Set db=DBEngine.Workspaces(0).OpenDatabase(FileName) 'FileName为你的*.mdb数据库文件名(全路径)。
Set rst = db.OpenRecordset("SELECT * FROM Table1;")'Table1为数据库的表名。
此后,你可以用rst.MoveFirst,rst.MoveNext,rst.MoveLast等方法移动记录指针,用rst.Fields(FieldsName).Value获取FieldsName字段的内容。

该怎么办呢难哦 发表于 2002-11-4 15:37:00

你说的该办法好像是DAO方法,DAO方式建立数据库好像要在程序里一步一步建立.而ADO方式只要直接读取用ACCESS建立的数据库即可,无需在程序里建立.不知是否这个意思?我只是对于ADO存取搜索ACCESS数据库的各种对象,属性不太了解,望高手指点

leeyeafu 发表于 2002-11-4 15:58:00



leeyeafu 发表于 2002-11-5 09:43:00

Dim cn As Connection
Set cn = New Connection
cn.CursorLocation = adUseClient
cn.Open &quotROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=" &_
      YourMdbPathName
Dim cmd As New ADODB.Command
Set cmd.ActiveConnection = cn
cmd.CommandText = YourSQLString
Dim rst As New ADODB.Recordset
rst.CursorLocation = adUseClient
rst.Open cmd,adOpenStatic,adLockBatchOptimistic
然后,你就可以和使用DAO的记录集相似的方法使用ADO的记录集rst了

该怎么办呢难哦 发表于 2002-11-5 16:14:00

是的,就是这些.我只是对这些对象和属性不太明白.我知道这些在VB6.0里面都有.我只是看不明白,我想问的是看懂这些需要去看有关数据库方面的书籍嘛?谢谢
页: [1]
查看完整版本: VBA与access数据库如何连接?做零件库时如何取值?