msiViewExecute 函式 (msiquery.h)
MsiViewExecute 函式會執行 SQL 檢視查詢,並提供任何必要的參數。 查詢會使用問號標記來表示 SQL 語法中所述的參數。 這些參數的值會當做參數記錄的對應欄位傳入。
語法
UINT MsiViewExecute(
[in] MSIHANDLE hView,
[in] MSIHANDLE hRecord
);
參數
[in] hView
要對其執行查詢之檢視的句柄。
[in] hRecord
提供參數的記錄句柄。 此參數包含值,可取代 SQL 查詢中的參數標記。 這是選擇性的,因此 hRecord 可以是零。 如需語法的參考,請參閱 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 Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer |
目標平台 | Windows |
標頭 | msiquery.h |
程式庫 | Msi.lib |
Dll | Msi.dll |