LOTUS CONNECTORS


外部データベースからデータを取り出す

テーブルを検索するには、ODBCConnectionODBCQueryODBCResultSet の各オブジェクトが必要です。ODBCQuery の Connection プロパティと ODBCResultSet の Query プロパティを次のように設定して、オブジェクトを明示的に関連付ける必要があります。


ODBCQuery オブジェクトが必要ない場合、ODBCResultSet の Connection プロパティを次のように設定できます。
SQL ステートメントを指定する
ODBCQuery の SQL プロパティは、検索で実行する SQL ステートメントを指定します。SELECT、CREATE TABLE、DROP TABLE、INSERT、UPDATE、DELETE などのステートメントを含めて、あらゆる有効な SQL 構文が SQL プロパティです。たとえば、次の SQL ステートメントは、STUDENTS テーブル内のすべてのデータを選択します。
次の SQL ステートメントは、STUDENTS テーブル内のすべてのデータ選択し、[LASTNAME] フィールドについて昇順に並べます。
次の SQL ステートメントは、[LASTNAME] フィールドと [FIRSTNAME] フィールドだけを選択します。
パラメータ
SQL 検索にはパラメータを含めることができます。次の検索には、studentNo という名のパラメータが 1 つ含まれます。
検索を実行する前に、パラメータに値を割り当てる必要があります。SetParameter メソッドは、パラメータの名前または (1 で始まる) 番号、およびその値を指定すると、パラメータに値を割り当てます。
パラメータの値を単一引用符で囲む必要がある場合 (文字値を持つ場合) は、SQL ステートメントではなく SetParameter メソッドで単一引用符を指定します。
パラメータの名前または番号を指定すると、GetParameter メソッドは、パラメータの現在の値を取得し、GetParameterName メソッドはパラメータの名前を取得します。NumParameters メソッドは、現在の SQL ステートメント内のパラメータの数を返します。これにより For ループを使ってパラメータを処理できます。次のコードは、パラメータ名を表示してその値の入力を要求することにより、現在の SQL ステートメント内のすべてのパラメータを設定します (この例では、パラメータにはすべて単一引用符が必要です)。
SQL ステートメントを実行する
ODBCResultSet オブジェクトExecute および ExecProcedure の各メソッドは、検索を実行し、選択されたデータを取り出します。ODBCQuery の QueryExecuteTimeOut プロパティを設定することにより、検索を完了するまでの時間を制限できます。

選択されたデータは結果セットとして利用できるようになります。結果セットには、テーブルから選択した各行に対して 1 行、テーブルから選択された各フィールドに対して 1 列が含まれます。データにアクセスするには ODBCResultSet オブジェクトを使います。

検索によってデータが返されたかどうかを判断するには、ODBCResultSet オブジェクトの IsResultSetAvailable メソッドを使います。

結果セットが必要でなくなったら、ODBCResultSet の Close メソッドで閉じます。