在 Visual Basic 中设置数据访问对象的属性

适用于:Access 2013 | Access 2016

利用数据访问对象 (DAO),您能够从 Visual Basic 中操作数据库的结构及其包含的数据。 许多 DAO 对象与您在数据库中看到的对象相对应 — 例如,TableDef 对象与 Microsoft Access 表相对应。 Field 对象与表中的字段相对应。

您可以为 DAO 对象设置的大多数属性都是 DAO 属性。 这些属性由 Microsoft Access 数据库引擎定义,设置方式在包括 Access 数据库引擎的任何应用程序中都相同。 您可为 DAO 对象设置的某些属性由 Microsoft Access 定义,Access 数据库引擎无法自动识别。 为 DAO 对象设置属性的方式取决于属性是由 Access 数据库引擎还是 Microsoft Access 定义的。

为 DAO 对象设置 DAO 属性

若要设置 Access 数据库引擎定义的属性,请引用 DAO 层次结构中的对象。 实现这一点的最方便快捷的方法是:创建代表需要处理的不同对象的对象变量,并在后续步骤中在代码中引用这些对象变量。 例如,以下代码创建一个新 TableDef 对象并设置其 Name 属性:

Dim dbs As DAO.Database 
Dim tdf As DAO.TableDef 
Set dbs = CurrentDb 
Set tdf = dbs.CreateTableDef 
tdf.Name = "Contacts"

为 DAO 对象设置 Microsoft Access 属性

当设置由 Microsoft Access 定义但应用于 DAO 对象的属性时,Access 数据库引擎不会自动将该属性识别为有效的属性。 首次设置该属性时,必须创建该属性并将其追加到应用该属性的对象的 Properties 集合中。 当该属性位于 Properties 集合中后,就可以像设置任何 DAO 属性一样设置它了。

如果首次在用户界面中设置一个属性,该属性会自动添加到 Properties 集合中,可以按照正常的方式设置它。

当编写用于设置由 Microsoft Access 定义的属性的过程时,应该包括错误处理代码以验证正在设置的属性在 Properties 集合中是否已经存在。 有关详细信息,请参阅关于 CreateProperty 方法的"帮助"主题或单个属性的主题。

切记,创建一个属性时,在将其追加到 Properties 集合之前必须正确指定其 Type 属性。 可以根据"帮助"主题"设置"部分中各个属性的信息来确定 Type 属性。 下表提供了用于确定 Type 属性设置的准则。

如果属性设置为 那么 Type 属性设置应是
字符串 dbText
True / False dbBoolean
整数 dbInteger

下表列出了适用于 DAO 对象的某些 Microsoft Access 定义的属性。

DAO 对象 Microsoft Access 定义的属性
Database AppTitleAppIconStartupShowDBWindowStartupShowStatusBarAllowShortcutMenusAllowFullMenusAllowBuiltInToolbarsAllowToolbarChangesAllowBreakIntoCodeAllowSpecialKeysReplicableReplicationConflictFunction
SummaryInfo Container TitleSubjectAuthorManagerCompanyCategoryKeywordsCommentsHyperlink Base(请参阅 “数据库名称 属性”对话框的“摘要”选项卡,该对话框可通过在“文件”菜单上选择“数据库属性”打开。)
UserDefined Container (请参阅 数据库名称 属性”对话框的“摘要”选项卡,该对话框可通过在“文件”菜单上选择“数据库属性”打开。)
TableDef DatasheetBackColorDatasheetCellsEffectDatasheetFontHeightDatasheetFontItalicDatasheetFontNameDatasheetFontUnderlineDatasheetFontWeightDatasheetForeColorDatasheetGridlinesBehaviorDatasheetGridlinesColorDescriptionFrozenColumnsRowHeightShowGrid
QueryDef DatasheetBackColorDatasheetCellsEffectDatasheetFontHeightDatasheetFontItalicDatasheetFontNameDatasheetFontUnderlineDatasheetFontWeightDatasheetForeColorDatasheetGridlinesBehaviorDatasheetGridlinesColorDescriptionFailOnErrorFrozenColumnsLogMessagesMaxRecordsRecordLocksRowHeightShowGrid、UseTransaction
Field CaptionColumnHiddenColumnOrderColumnWidthDecimalPlacesDescriptionFormatInputMask

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。