MsiViewExecute-Funktion (msiquery.h)
Die MsiViewExecute-Funktion führt eine SQL-Ansichtsabfrage aus und stellt alle erforderlichen Parameter bereit. Die Abfrage verwendet das Fragezeichentoken, um Parameter wie in SQL-Syntax beschrieben darzustellen. Die Werte dieser Parameter werden als entsprechende Felder eines Parameterdatensatzes übergeben.
Syntax
UINT MsiViewExecute(
[in] MSIHANDLE hView,
[in] MSIHANDLE hRecord
);
Parameter
[in] hView
Handle mit der Ansicht, in der die Abfrage ausgeführt werden soll.
[in] hRecord
Handle für einen Datensatz, der die Parameter bereitstellt. Dieser Parameter enthält Werte, um die Parametertoken in der SQL-Abfrage zu ersetzen. Es ist optional, sodass hRecord 0 sein kann. Eine Referenz zur Syntax finden Sie unter SQL-Syntax.
Rückgabewert
Beachten Sie, dass diese Funktion in Situationen mit wenig Arbeitsspeicher eine STATUS_NO_MEMORY Ausnahme auslösen kann.
Hinweise
Die MsiViewExecute-Funktion muss vor allen Aufrufen von MsiViewFetch aufgerufen werden.
Wenn die SQL-Abfrage Werte mit Parametermarkern (?) angibt, muss ein Datensatz angegeben werden, der alle Ersatzwerte in der genauen Reihenfolge und kompatibler Datentypen enthält. Bei Verwendung mit INSERT- und UPDATE-Abfragen müssen alle parametrisierten Werte allen nicht parametrisierten Werten vorangestellt werden.
Diese Abfragen sind beispielsweise gültig.
UPDATE {table-list} SET {column}= ? , {column}= {constant}
INSERT INTO {table} ({column-list}) VALUES (?, {constant-list})
Diese Abfragen sind jedoch ungültig.
UPDATE {table-list} SET {column}= {constant}, {column}=?
INSERT INTO {table} ({column-list}) VALUES ({constant-list}, ? )
Wenn die Funktion fehlschlägt, können Sie erweiterte Fehlerinformationen mithilfe von MsiGetLastErrorRecord abrufen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Installer 5.0 unter Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 unter Windows Server 2008 oder Windows Vista. Windows Installer unter Windows Server 2003 oder Windows XP |
Zielplattform | Windows |
Kopfzeile | msiquery.h |
Bibliothek | Msi.lib |
DLL | Msi.dll |