CDaoDatabase::GetRelationInfo
更新 : 2007 年 11 月
データベースの Relations コレクション内の指定されたリレーションシップに関する情報を取得します。
void GetRelationInfo(
int nIndex,
CDaoRelationInfo& relinfo,
DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO
);
void GetRelationInfo(
LPCTSTR lpszName,
CDaoRelationInfo& relinfo,
DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO
);
パラメータ
nIndex
インデックスで検索する場合の、データベースの Relations コレクションでのリレーションシップ オブジェクトのインデックス。relinfo
要求された情報を返す CDaoRelationInfo オブジェクトへの参照。dwInfoOptions
リレーションシップに関して取得する情報を指定するオプション。指定できるオプションと、各オプションに応じて関数が返す情報を次に示します。AFX_DAO_PRIMARY_INFO (既定) 名前、テーブル、外部キー テーブル。
AFX_DAO_SECONDARY_INFO 属性、フィールド情報。
フィールド情報は、リレーションシップに関係する主テーブルのフィールドを持つ CDaoRelationFieldInfo オブジェクトです。
lpszName
名前で検索する場合の、リレーションシップ オブジェクト名を持つ文字列。
解説
インデックス、または名前のどちらでもアクセスできるように、2 つの形式の関数が用意されています。relinfo に返される情報の詳細については、CDaoRelationInfo 構造体を参照してください。この構造体は、上記の dwInfoOptions で説明した情報に対応するメンバを保持します。あるレベルの情報を要求すると、そのレベル以下の情報も返されます。
メモ : |
---|
連鎖操作 (dbRelationUpdateCascades または dbRelationDeleteCascades) をアクティブにするために、リレーションシップ オブジェクトの属性を設定する場合、関係付けられた主キー テーブルが変更されると、Microsoft Jet データベース エンジンは自動的に 1 つ以上の他のテーブルのレコードを更新、または削除します。たとえば、顧客テーブルと発注テーブルの間に、連鎖削除のリレーションシップを確立しているとします。顧客テーブルからレコードを削除すると、発注テーブルのその顧客に関連するレコードも削除されます。また、発注テーブルとほかのテーブル間に連鎖削除のリレーションシップが設定されている場合、顧客テーブルからレコードが削除されると、これらのテーブルのレコードも削除されます。 |
必要条件
ヘッダー : afxdao.h
参照
参照
CDaoDatabase::GetRelationCount