CDaoTableDefInfo 结构

CDaoTableDefInfo 结构包含有关为数据访问对象 (DAO) 定义的 tabledef 对象的信息。

语法

struct CDaoTableDefInfo
{
    CString m_strName;               // Primary
    BOOL m_bUpdatable;               // Primary
    long m_lAttributes;              // Primary
    COleDateTime m_dateCreated;      // Secondary
    COleDateTime m_dateLastUpdated;  // Secondary
    CString m_strSrcTableName;       // Secondary
    CString m_strConnect;            // Secondary
    CString m_strValidationRule;     // All
    CString m_strValidationText;     // All
    long m_lRecordCount;             // All
};

参数

m_strName
对 tabledef 对象进行唯一命名。 若要直接检索此属性的值,请调用 tabledef 对象的 GetName 成员函数。 有关详细信息,请参阅 DAO 帮助中的“Name 属性”主题。

m_bUpdatable
指示是否可以对表进行更改。 确定表是否可更新的快速方法是打开表的 CDaoTableDef 对象,并调用对象的 CanUpdate 成员函数。 对于新创建的 tabledef 对象,CanUpdate 始终返回非零 (TRUE),对于附加的 tabledef 对象,则返回 0 (FALSE)。 新的 tabledef 对象只能追加到当前用户具有写入权限的数据库。 如果表仅包含不可更新的字段,则 CanUpdate 返回 0。 当一个或多个字段可更新时,CanUpdate 返回非零。 只能编辑可更新的字段。 有关详细信息,请参阅 DAO 帮助中的“Updatable 属性”主题。

m_lAttributes
指定由 tabledef 对象表示的表的特征。 若要检索 tabledef 的当前属性,请调用其 GetAttributes 成员函数。 返回的值可以是这些长常数的组合(使用按位 OR (|) 运算符):

  • dbAttachExclusive 对于使用 Microsoft Jet 数据库引擎的数据库,指示表是处于打开状态的专用附加表。

  • dbAttachSavePWD 对于使用 Microsoft Jet 数据库引擎的数据库,指示附加表的用户 ID 和密码随连接信息一起保存。

  • dbSystemObject 指示表是 Microsoft Jet 数据库引擎提供的系统表。 (只读。)

  • dbHiddenObject 指示表是 Microsoft Jet 数据库引擎提供的隐藏表(供临时使用)。 (只读。)

  • dbAttachedTable 指示表是一个非 ODBC 数据库(如 Paradox 数据库)中的附加表。

  • dbAttachedODBC 指示表是一个 ODBC 数据库(如 Microsoft SQL Server)中的附加表。

m_dateCreated
表的创建日期和时间。 若要直接检索表的创建日期,请调用与表关联的 CDaoTableDef 对象的 GetDateCreated 成员函数。 有关详细信息,请参阅下面的注释。 有关相关信息,请参阅 DAO 帮助中的主题“DateCreated、LastUpdated 属性”。

m_dateLastUpdated
最近对表设计所做的更改的日期和时间。 若要直接检索表的上次更新日期,请调用与表关联的 CDaoTableDef 对象的 GetDateLastUpdated 成员函数。 有关详细信息,请参阅下面的注释。 有关相关信息,请参阅 DAO 帮助中的主题“DateCreated、LastUpdated 属性”。

m_strSrcTableName
指定附加表的名称(如果有)。 若要直接检索源表名称,请调用与表关联的 CDaoTableDef 对象的 GetSourceTableName 成员函数。

m_strConnect
提供有关开放数据库的源信息。 可以通过调用 CDaoTableDef 对象的 GetConnect 成员函数来检查此属性。 有关连接字符串的详细信息,请参阅 GetConnect

m_strValidationRule
一个值,当 tabledef 字段中的数据更改或添加到表中时,该值会验证这些数据。 只有使用 Microsoft Jet 数据库引擎的数据库才支持验证。 若要直接检索验证规则,请调用与表关联的 CDaoTableDef 对象的 GetValidationRule 成员函数。 要了解相关信息,请参阅 DAO 帮助中的主题“ValidationRule 属性”。

m_strValidationText
一个值,该值指定如果不满足 ValidationRule 属性指定的验证规则,应用程序应显示的消息文本。 有关信息,请参阅 DAO 帮助中的主题“ValidationText 属性”。

m_lRecordCount
在 tabledef 对象中访问的记录数。 此属性设置是只读的。 若要直接检索记录计数,请调用 CDaoTableDef 对象的 GetRecordCount 成员函数。 GetRecordCount 的文档进一步介绍了记录计数。 请注意,如果表包含许多记录,则检索此计数可能是一项耗时的操作。

备注

tabledef 是类 CDaoTableDef 的一个对象。 上面对 Primary、Secondary 和 All 的引用指示信息是如何由类 CDaoDatabase 中的 GetTableDefInfo 成员函数返回的。

CDaoDatabase::GetTableDefInfo 成员函数检索的信息存储在 CDaoTableDefInfo 结构中。 调用 CDaoDatabase 对象的 GetTableDefInfo 成员函数,tabledef 对象存储在该对象的 TableDefs 集合中。 CDaoTableDefInfo 还在调试生成中定义了一个 Dump 成员函数。 可使用 Dump 来转储 CDaoTableDefInfo 对象的内容。

日期和时间设置派生自创建或上次更新基表的计算机。 在多用户环境中,用户应直接从文件服务器获取这些设置,以避免 DateCreated 和 LastUpdated 属性设置的差异。

要求

标头:afxdao.h

另请参阅

结构、样式、回调和消息映射
CDaoTableDef 类
CDaoDatabase 类