CDaoTableDefInfo 構造体

CDaoTableDefInfo構造体には、データ アクセス オブジェクト (DAO) に対して定義された tabledef オブジェクトに関する情報が含まれています。

Note

DAO は、Office 2013 でサポートされています。 DAO 3.6 は最終バージョンであり、古いと見なされます。

構文

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 メンバー関数を呼び出します。 CanUpdate 新しく作成された tabledef オブジェクトの場合は常に 0 以外 (TRUE) を返し、アタッチされた tabledef オブジェクトの場合は 0 (FALSE) を返します。 新しい tabledef オブジェクトは、現在のユーザーが書き込みアクセス許可を持っているデータベースにのみ追加できます。 テーブルに非有効なフィールドのみが含まれている場合、 CanUpdate は 0 を返します。 1 つ以上のフィールドが更新可能な場合、 CanUpdate は 0 以外の値を返します。 更新可能なフィールドのみを編集できます。 詳細については、DAO ヘルプの「更新可能なプロパティ」を参照してください。

m_lAttributes
tabledef オブジェクトによって表されるテーブルの特性を指定します。 tabledef の現在の属性を取得するには、その GetAttributes メンバー関数を呼び出します。 返される値は、これらの長い定数の組み合わせにすることができます (ビットごとの OR (|) 演算子を使用します)。

  • dbAttachExclusive Microsoft Jet データベース エンジンを使用するデータベースの場合、テーブルが排他的に開かれた添付テーブルであることを示します。

  • dbAttachSavePWD Microsoft Jet データベース エンジンを使用するデータベースの場合は、接続テーブルのユーザー ID とパスワードが接続情報と共に保存されることを示します。

  • dbSystemObject テーブルが Microsoft Jet データベース エンジンによって提供されるシステム テーブルであることを示します。 システム テーブルは読み取り専用です。

  • dbHiddenObject テーブルが Microsoft Jet データベース エンジンによって提供される非表示テーブルであることを示します (一時的な使用)。 システム テーブルは読み取り専用です。

  • dbAttachedTable テーブルが、Paradox データベースなどの ODBC 以外のデータベースからアタッチされたテーブルであることを示します。

  • dbAttachedODBC テーブルが、Microsoft SQL Server などの ODBC データベースからアタッチされたテーブルであることを示します。

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 への参照は、クラス CDaoDatabaseGetTableDefInfo メンバー関数によって情報がどのように返されるかを示します。

CDaoDatabase::GetTableDefInfo メンバー関数によって取得された情報は、CDaoTableDefInfo構造体に格納されます。 tabledefs コレクションに tabledef オブジェクトが格納されているCDaoDatabase オブジェクトのGetTableDefInfo メンバー関数を呼び出します。 CDaoTableDefInfo では、デバッグ ビルドで Dump メンバー関数も定義します。 Dump を使用して、CDaoTableDefInfo オブジェクトの内容をダンプすることができます。

日付と時刻の設定は、ベース テーブルが作成または最後に更新されたコンピューターから派生します。 マルチユーザー環境では、DateCreated プロパティと LastUpdated プロパティの設定の不一致を回避するために、ユーザーはファイル サーバーからこれらの設定を直接取得する必要があります。

要件

ヘッダー: afxdao.h

関連項目

構造体、スタイル、コールバック関数とメッセージ マップ
CDaoTableDef クラス
CDaoDatabase クラス