Access VBA教程:CodeDb方法

在代码模块中使用 CodeDb方法可以确定引用当前代码运行所在的数据库的Database对象的名称。使用 CodeDb方法可以访问作为类库数据库一部分的数据访问对象 (DAO)。

expression.CodeDb

expression   必需。返回“Applies To”列表中的一个对象的表达式。

说明

例如,可以在类库数据库的一个模块中使用 CodeDb方法来创建引用类库数据库的 Database对象,然后就可以打开基于类库数据库中表的记录集。

Set database = CodeDb

CodeDb方法返回一个 Database对象,该对象的Name属性为从其中调用该方法的数据库的完整路径和名称。在需要处理类库数据库中的“数据访问对象”时,该方法尤其有用。

当调用类库数据库中的方法时,被调用方法的数据库仍为当前数据库,即使运行的代码是在类库数据库的一个模块中运行,情况也一样。为了引用类库数据库中的“数据访问对象”,需要知道代表类库数据库的 Database对象的名称。

例如,假设在类库数据库中有一个列出错误消息的表。若要从代码中处理表中的数据,可以使用 CodeDb方法来确定引用该表所在类库数据库的 Database对象的名称。

如果从当前数据库中执行 CodeDb方法,该方法将返回当前数据库的名称,而且返回的值和CurrentDb方法返回的值相同。

VBA示例

下面的示例使用 CodeDb方法返回引用类库数据库的 Database对象。类库数据库同时包含名为 Errors 的表和当前正在运行的代码。在 CodeDb方法确定该信息后,GetErrorString函数打开基于 Error 表的表类型记录集。然后从名为 ErrorData 的字段(该字段基于传递给函数的 Integer 值)中提取错误消息。


Function GetErrorString(ByVal intError As Integer) As String
    Dim dbs As Database, rst As RecordSet
    ' Variable refers to database where code is running.
    Set dbs = CodeDb
    ' Create table-type Recordset object.
    Set rst = dbs.OpenRecordSet("Errors", dbOpenTable)
    ' Set index to primary key (ErrorID field).
    rst.Index = "PrimaryKey"
    ' Find error number passed to GetErrorString function.
    rst.Seek "=", intError
    ' Return associated error message.
    GetErrorString = rst.Fields!ErrorData.Value
    rst.Close
End Function

上页:Access VBA教程:CloseCurrentDatabase方法 下页:Access VBA教程:CompactRepair方法

Access VBA教程:CodeDb方法

Access VBA教程:CompactRepair方法 Access VBA教程:ConvertAccessProject方法
Access VBA教程:CopyDatabaseFile方法 Access VBA教程:CreateAccessProject方法
Access VBA教程:CreateControl方法 Access VBA教程:CreateDataAccessPage方法
Access VBA教程:CreateEventProc方法 Access VBA教程:CreateForm方法
Access VBA教程:AddFromFile方法 Access VBA教程:AddFromGuid方法
Access VBA教程:CreateGroupLevel方法 Access VBA教程:CreateNewDocument方法
Access VBA教程:CreateNewWorkgroupFile方法 Access VBA教程:CreateReport方法
Access VBA教程:CreateReportControl方法 Access VBA教程:CurrentDb方法
Access VBA教程:CurrentUser方法 Access VBA教程:DAvg方法
Access VBA教程:DCount方法 Access VBA教程:DDEExecute方法
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号