Freigeben über


Übergeben von Parametern an Updategrams (SQLXML 4.0)

Aktualisierungsdiagramme sind Vorlagen; Daher können Sie diese Parameter übergeben. Weitere Informationen zum Übergeben von Parametern an Vorlagen finden Sie unter Updategram Security Considerations (SQLXML 4.0).For more information about passing parameters to templates, see Updategram Security Considerations (SQLXML 4.0).

Mit Aktualisierungsdiagrammen können Sie NULL als Parameterwert übergeben. Um den NULL-Parameterwert zu übergeben, geben Sie das nullvalue Attribut an. Der dem Attribut zugewiesene nullvalue Wert wird dann als Parameterwert bereitgestellt. Updategramme behandeln diesen Wert als NULL.

Hinweis

In <sql:header> und <updg:header>, sollten Sie die nullvalue als nicht qualifiziert angeben; in der Erwägung, dass Sie die <updg:sync>nullvalue als qualifiziert (z. Bupdg:nullvalue. ) angeben.

Beispiele

Zum Erstellen von Arbeitsbeispielen mit den folgenden Beispielen müssen Sie die anforderungen erfüllen, die in "Requirements for Running SQLXML Examples" angegeben sind.

Bevor Sie die Updategrammbeispiele verwenden, beachten Sie Folgendes:

Ein. Übergeben von Parametern an ein Updatediagramm

In diesem Beispiel ändert das Updatediagramm den Nachnamen eines Mitarbeiters in der Tabelle "HumanResources.Shift". Das Updategram wird zwei Parameter übergeben: ShiftID, die 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 Updategramm
  1. Kopieren Sie das oben gezeigte Updatediagramm in Editor, und speichern Sie es als UpdategramWithParameters.xml.

  2. Bereiten Sie das SQLXML 4.0-Testskript (Sqlxml4test.vbs) unter Verwendung von ADO zum Ausführen von SQLXML 4.0-Abfragen vor, um das Updategram auszuführen, indem Sie die folgenden Zeilen nach dem cmd.Properties("Output Stream").Value = outStreamFolgenden hinzufügen:

    cmd.NamedParameters = True  
    ' CreateParameter arguments: Name, Type, Direction, Size, Value  
    cmd.Parameters.Append cmd.CreateParameter("@ShiftID",  2, 1,  0, 1)  
    cmd.Parameters.Append cmd.CreateParameter("@Name",   200, 1, 50, "New Name")  
    

B. Übergeben von NULL als Parameterwert an ein Updatediagramm

Beim Ausführen eines Updategramms wird der Wert "isnull" dem Parameter zugewiesen, den Sie auf NULL festlegen möchten. Updategram konvertiert den Parameterwert "isnulll" in NULL und verarbeitet ihn entsprechend.

Das folgende Updatediagramm 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 Updategramm
  1. Kopieren Sie das oben gezeigte Updatediagramm in Editor, und speichern Sie es als UpdategramPassingNullvalues.xml.

  2. Bereiten Sie das SQLXML 4.0-Testskript (Sqlxml4test.vbs) unter Verwendung von ADO zum Ausführen von SQLXML 4.0-Abfragen vor, um das Updategram auszuführen, indem Sie die folgenden Zeilen nach dem cmd.Properties("Output Stream").Value = outStreamFolgenden hinzufügen:

    cmd.NamedParameters = True  
    ' CreateParameter arguments: Name, Type, Direction, Size, Value   
    cmd.Parameters.Append cmd.CreateParameter("@EmployeeID", 3, 1, 0, 1)  
    cmd.Parameters.Append cmd.CreateParameter("@ManagerID",  3, 1, 0, Null)  
    

Siehe auch

Überlegungen zur Updategramsicherheit (SQLXML 4.0)