Übergeben von Parametern an Updategrams (SQLXML 4.0)
Updategrams sind Vorlagen. Daher können Sie ihnen Parameter übergeben. Weitere Informationen zum Übergeben von Parametern an Vorlagen finden Sie unter Sicherheitsüberlegungen zu Updategrams (SQLXML 4.0).
Mit Updategrams können Sie NULL als Parameterwert übergeben. Um den NULL-Parameterwert zu übergeben, geben Sie das nullvalue-Attribut an. Der Wert, der dem nullvalue-Attribut zugewiesen wird, wird dann als Parameterwert zur Verfügung gestellt. Updategrams behandeln diesen Wert als NULL.
Hinweis |
---|
In <sql:header> und <updg:header> geben Sie den nullvalue-Wert als nicht qualifiziert an, während Sie den nullvalue-Wert in <updg:sync> als qualifiziert angeben (z. B. updg:nullvalue). |
Beispiele
Damit mithilfe der folgenden Beispiele funktionierende Beispiele erstellt werden können, müssen die in Anforderungen zum Ausführen von SQLXML-Beispielen angegebenen Anforderungen erfüllt sein.
Bevor Sie die Updategrambeispiele verwenden, beachten Sie Folgendes:
Die Beispiele verwenden die Standardzuordnung (d. h. es ist kein Zuordnungsschema im Updategram angegeben). Weitere Beispiele für Updategrams, die Zuordnungsschemas verwenden, finden Sie unter Angeben eines Zuordnungsschemas mit Anmerkungen in einem Updategram (SQLXML 4.0).
Aktualisierungen werden für die Tabellen in der AdventureWorks-Datenbank übernommen. Sie können die AdventureWorks-Datenbank wiederherstellen. Weitere Informationen finden Sie unter AdventureWorks-Beispieldatenbanken.
A. Übergeben von Parametern an ein Updategram
In diesem Beispiel ändert das Updategram den Nachnamen eines Angestellten in der HumanResources.Shift-Tabelle. Dem Updategram werden zwei Parameter übergeben: ShiftID, der verwendet wird, um eine Schicht eindeutig zu identifizieren, und Name.
<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">
<updg:header>
<updg:param name="ShiftID"/>
<updg:param name="Name" />
</updg:header>
<updg:sync >
<updg:before>
<HumanResources.Shift ShiftID="$ShiftID" />
</updg:before>
<updg:after>
<HumanResources.Shift Name="$Name" />
</updg:after>
</updg:sync>
</ROOT>
So testen Sie das Updategram
Kopieren Sie das oben angegebene Updategram in Editor, und speichern Sie es als Datei unter UpdategramWithParameters.xml.
Erstellen und verwenden Sie das SQLXML 4.0-Testskript (Sqlxml4test.vbs), um das Updategram auszuführen.
Weitere Informationen finden Sie unter Verwenden von ADO zum Ausführen von SQLXML 4.0-Abfragen.
B. Übergeben von NULL als Parameterwert an ein Updategram
Durch Ausführen eines Updategrams wird der Wert "isnull" dem Parameter zugewiesen, der auf NULL gesetzt werden soll. Das Updategram konvertiert den "isnulll"-Parameterwert in NULL und verarbeitet ihn entsprechend.
Das folgende Updategram legt einen Mitarbeitertitel auf NULL fest:
<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">
<updg:header nullvalue="isnull" >
<updg:param name="EmployeeID"/>
<updg:param name="ManagerID" />
</updg:header>
<updg:sync >
<updg:before>
<HumanResources.Employee EmployeeID="$EmployeeID" />
</updg:before>
<updg:after>
<HumanResources.Employee ManagerID="$ManagerID" />
</updg:after>
</updg:sync>
</ROOT>
So testen Sie das Updategram
Kopieren Sie das oben angegebene Updategram in Editor, und speichern Sie es als Datei unter UpdategramPassingNullvalues.xml.
Erstellen und verwenden Sie das SQLXML 4.0-Testskript (Sqlxml4test.vbs), um das Updategram auszuführen.
Weitere Informationen finden Sie unter Verwenden von ADO zum Ausführen von SQLXML 4.0-Abfragen.