CDaoQueryDef クラス
クエリ定義、つまり "querydef" を表し、通常はデータベースに保存されています。
class CDaoQueryDef : public CObject
メンバー
パブリック コンストラクター
名前 |
説明 |
---|---|
CDaoQueryDef オブジェクトを構築します。必要に応じて、次の呼び出し [開く] か、[作成]。 |
パブリック メソッド
名前 |
説明 |
---|---|
データベースの QueryDefs のコレクションに、querydef ように保存されたクエリを追加します。 |
|
クエリがデータベースを更新できる場合はを返します。 |
|
querydef オブジェクトを閉じます。これを終了するときに C++ オブジェクトを破棄します。 |
|
基になる DAO の querydef オブジェクトを作成します。データベースに保存するには、一時的なクエリ、または呼び出し [追加] として、querydef を使用します。 |
|
querydef オブジェクトによって定義されるクエリを実行します。 |
|
querydef に関連付けられている接続文字列を返します。接続文字列は、データ ソースを識別します。(SQL のパススルー クエリの場合のみ; それ以外の場合は空の文字列。) |
|
保存されたクエリが作成された日付を返します。 |
|
保存されたクエリの最終更新日を返します。 |
|
querydef して定義されたフィールドの数を返します。 |
|
クエリで定義される指定したフィールドに関する情報を返します。 |
|
querydef の名前を返します。 |
|
querydef が実行されると、ODBC によって使用されるタイムアウト値を返します (ODBC のクエリの場合)。これはクエリの処理を完了するためにどの程度を判定します。 |
|
クエリに対して定義されているパラメーターの数を返します。 |
|
クエリに指定されたパラメーターに関する情報を返します。 |
|
クエリに指定されたパラメーターの値を返します。 |
|
アクション クエリによって影響を受けたレコードの数を返します。 |
|
querydef で定義されるクエリがレコードを返す場合は、を返します。 |
|
querydef で定義されるクエリを指定する SQL 文字列を返します。 |
|
クエリの型が返されます: テーブルなど、作削除して、更新して追加します。 |
|
querydef を開いてで実装できる場合は、を返します。 |
|
データベースの QueryDefs のコレクションに格納されている既存の querydef を開きます。 |
|
ODBC データ ソースの SQL のパススルー クエリの接続文字列を設定します。 |
|
querydef の作成時に使用されている名前を置換保存されたクエリの名前を設定します。 |
|
querydef が実行されたときにタイムアウト値を ODBC によって使用される設定 (ODBC のクエリの場合)。 |
|
クエリに指定されたパラメーターの値を設定します。 |
|
querydef がレコードを返すかどうかを指定します。[真] にこの属性を設定すると、SQL のパススルー クエリに対してのみ有効です。 |
|
querydef で定義されるクエリを指定する SQL 文字列を設定します。 |
パブリック データ メンバー
名前 |
説明 |
---|---|
基になる DAO の querydef オブジェクトの OLE インターフェイスへのポインター。 |
|
querydef が関連付けられている CDaoDatabase オブジェクトへのポインター。querydef はデータベースに保存またはない可能性があります。 |
解説
querydef は、クエリの説明、および「作成され」、ODBC タイムアウト日付などのプロパティを」、含む SQL ステートメントのデータ アクセス オブジェクトです。また、変更を保存せずに一時的な querydef オブジェクトを作成しているデータベースの一般に再利用されたクエリを保存すると、—、効率—便利です。CDaoDatabase のオブジェクトが保存された querydefs を含む、コレクション QueryDefs のコレクションを保持します。
[!メモ]
DAO データベース クラスは、ODBC (Open Database Connectivity) に基づく MFC データベース クラスとは異なります。すべての DAO データベース クラス名に「CDao」が付きます。まだ DAO クラスと ODBC データ ソースにアクセスできます。一般に、に基づく MFC DAO クラスは、ODBC (DAO クラスより;できます。DAO ベースのクラスには独自のデータベース エンジンで ODBC ドライバーを通じて、含むデータにアクセスできます。DAO ベースのクラスは、クラスによって DAO を直接呼び出さないでテーブルの追加など、データ定義言語の (DDL)、操作をサポートします。
使用方法
保存されたクエリを使用するには、querydef オブジェクトまたは新しい保存されたクエリまたは一時的なクエリを作成するには:
いずれの場合も、最初にクエリが属する CDaoDatabase オブジェクトへのポインターを指定する CDaoQueryDef のオブジェクトを構築します。
を与えない場合によっては、次する:
既存のを使用すると、クエリを呼び出します。保存されたクエリの名前を指定して、querydef オブジェクトの [開く] のメンバー関数をしました。
新しい保存されたクエリを作成するには、クエリの名前を指定して、querydef オブジェクトの [作成] のメンバー関数を呼び出します。次に、データベースの QueryDefs のコレクションにテンプレートを追加してクエリを保存するに [追加] を呼び出します。[作成] は、開いている状態で、querydef を入力するため、[作成] を呼び出した後 **[開く]**を呼び出さないでください。
一時 querydef を作成するには、**[作成]を呼び出します。クエリの名前の空の文字列を渡します。[追加]**を呼び出さないでください。
querydef オブジェクトを使い終わったら [閉じる] のメンバー関数を呼び出します。; その後、querydef オブジェクトを破棄します。
ヒント |
---|
保存されたクエリを作成する最も簡単な方法は、を作成し、Microsoft Access を使用して、データベースに格納します。次に、MFC コードでそれらを開いて使用できます。 |
目的
次の目的に対しても、querydef オブジェクトを使用する:
CDaoRecordset のオブジェクトを作成するには
オブジェクトの [実行] のメンバー関数を直接操作または SQL クエリのパススルー クエリを実行するために呼び出すには
を含むクエリの任意の型のデータ定義、SQL のパススルー、共用体、サイズのクエリ querydef オブジェクトを選択し、アクション、crosstab、削除、更新、作使用し、テーブル、追加できます。クエリの型が、指定した SQL ステートメントの内容によって決まります。クエリの型については、[実行] と Object のメンバー関数を参照してください。レコードセットは、行を返すクエリ、通常、SELECT… を使用してそれらのは一般的ですキーワードで。[実行] は一括操作に最も一般的です。詳細については、[実行] と CDaoRecordsetを参照してください。
レコードセットと Querydefs
CDaoRecordset のオブジェクトを作成するために、querydef オブジェクトを使用するには、通常、querydef を作成するか、上のように表示されます。次 CDaoRecordset::Openを呼び出すときに、querydef オブジェクトへのポインターを渡すレコードセット オブジェクトを構築します。に渡す querydef は、開いている状態である必要があります。詳細については、クラス CDaoRecordsetを参照してください。
開いている状態にあるレコードセット (querydef の一般的な使用) を作成するには、querydef を使用できません。[開く] か **[作成]**を呼び出して、開いている状態で、querydef を入力します。
外部データベース
Querydef のオブジェクトは、外部データベース エンジンのネイティブの SQL 言語を使用する場合に適しています。(Microsoft SQL Server で使用される) たとえば、処理の SQL クエリを作成し、querydef オブジェクトに格納することができます。Microsoft Jet データベース エンジンに基づいて SQL クエリを使用する必要がある場合は、外部データ ソースを指す接続文字列を指定する必要があります。有効な接続文字列とのクエリはデータベース エンジンを使用しないで、処理の外部データベース サーバーに直接クエリを渡します。
ヒント |
---|
ODBC のテーブルを使用する場合に推奨される方法は、Microsoft Jet (.mdb) データベースにユーザーをアタッチできます。 |
関連情報については、DAO SDK の「QueryDef オブジェクトのコレクション QueryDefs」、「」、および「CdbDatabase オブジェクト」を参照してください。
継承階層
CDaoQueryDef
必要条件
Header: afxdao.h