MsiViewExecute 関数 (msiquery.h)

MsiViewExecute 関数は、SQL ビュー クエリを実行し、必要なパラメーターを指定します。 クエリでは、「 SQL 構文」で説明されているように、疑問符トークンを使用してパラメーターを表します。 これらのパラメーターの値は、パラメーター レコードの対応するフィールドとして渡されます。

構文

UINT MsiViewExecute(
  [in] MSIHANDLE hView,
  [in] MSIHANDLE hRecord
);

パラメーター

[in] hView

クエリを実行するビューを処理します。

[in] hRecord

パラメーターを提供するレコードを処理します。 このパラメーターには、SQL クエリのパラメーター トークンを置き換える値が含まれています。 これは省略可能であるため、 hRecord は 0 にすることができます。 構文のリファレンスについては、「 SQL 構文」を参照してください。

戻り値

メモリ不足の状況では、この関数によってSTATUS_NO_MEMORY例外が発生する可能性があることに注意してください。

注釈

MsiViewExecute 関数は、MsiViewFetch を呼び出す前に呼び出す必要があります。

SQL クエリでパラメーター マーカー (?) を使用して値を指定する場合は、すべての置換値を正確な順序と互換性のあるデータ型で含むレコードを指定する必要があります。 INSERT クエリと UPDATE クエリで使用する場合は、パラメーター化されたすべての値の前にパラメーター化されていない値をすべて指定する必要があります。

たとえば、これらのクエリは有効です。

UPDATE {table-list} SET {column}= ? , {column}= {constant}

INSERT INTO {table} ({column-list}) VALUES (?, {constant-list})

ただし、これらのクエリは無効です。

UPDATE {table-list} SET {column}= {constant}, {column}=?

INSERT INTO {table} ({column-list}) VALUES ({constant-list}, ? )

関数が失敗した場合は、 MsiGetLastErrorRecord を使用して拡張エラー情報を取得できます。

要件

要件
サポートされている最小のクライアント Windows Server 2012、Windows 8、Windows Server 2008 R2、または Windows 7 の Windows インストーラー 5.0。 Windows Server 2008 または Windows Vista の Windows インストーラー 4.0 または Windows インストーラー 4.5。 Windows Server 2003 または Windows XP の Windows インストーラー
対象プラットフォーム Windows
ヘッダー msiquery.h
Library Msi.lib
[DLL] Msi.dll

こちらもご覧ください

一般的なデータベース アクセス関数