次の方法で共有


アップデートグラムへのパラメーターの渡し (SQLXML 4.0)

アップデートグラムはテンプレートです。そのため、パラメーターを渡すことができます。 テンプレートにパラメーターを渡す方法の詳細については、「 Updategram のセキュリティに関する考慮事項 (SQLXML 4.0)」を参照してください。

アップデートグラムを使用すると、パラメーター値として NULL を渡すことができます。 NULL パラメーター値を渡すには、 nullvalue 属性を指定します。 nullvalue属性に割り当てられる値は、パラメーター値として指定されます。 アップデートグラムでは、この値は NULL として扱われます。

<sql:header><updg:header>では、nullvalueを非修飾として指定する必要があります。一方、<updg:sync>では、nullvalueを修飾として指定します (たとえば、updg:nullvalue)。

例示

次の例を使用して作業サンプルを作成するには、「SQLXML の例を 実行するための要件」で指定されている要件を満たす必要があります。

アップデートグラムの例を使用する前に、次の点に注意してください。

A。 アップデートグラムにパラメーターを渡す

この例では、アップデートグラムによって HumanResources.Shift テーブル内の従業員の姓が変更されます。 アップデートグラムには、シフトを一意に識別するために使用される ShiftID と Name という 2 つのパラメーターが渡されます。

<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>  
アップデートグラムをテストするには
  1. 上記のアップデートグラムをメモ帳にコピーし、UpdategramWithParameters.xmlとしてファイルに保存します。

  2. 「ADO を使用した SQLXML 4.0 クエリの実行」の SQLXML 4.0 テスト スクリプト (Sqlxml4test.vbs ) を準備し、 cmd.Properties("Output Stream").Value = outStreamの後に次の行を追加してアップデートグラムを実行します。

    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. パラメーター値として NULL をアップデートグラムに渡す

アップデートグラムを実行すると、NULL に設定するパラメーターに "isnull" 値が割り当てられます。 アップデートグラムは、"isnulll" パラメーター値を NULL に変換し、それに応じて処理します。

次のアップデートグラムでは、従業員のタイトルが NULL に設定されます。

<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>  
アップデートグラムをテストするには
  1. 上記のアップデートグラムをメモ帳にコピーし、UpdategramPassingNullvalues.xmlとしてファイルに保存します。

  2. 「ADO を使用した SQLXML 4.0 クエリの実行」の SQLXML 4.0 テスト スクリプト (Sqlxml4test.vbs ) を準備し、 cmd.Properties("Output Stream").Value = outStreamの後に次の行を追加してアップデートグラムを実行します。

    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)  
    

こちらもご覧ください

アップデートグラムのセキュリティに関する考慮事項 (SQLXML 4.0)