次の方法で共有


XML アップデートグラムを使用した、データの削除 (SQLXML 4.0)

適用対象: SQL Server Azure SQL Database

アップデートグラムは、レコード インスタンスが <before> ブロックに表示され、 <後> ブロックに対応するレコードがない場合に削除操作を示します。 この場合、アップデートグラムはデータベースから <before> ブロック内のレコードを削除します。

削除操作のアップデートグラムの形式は次のとおりです。

<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">  
  <updg:sync [mapping-schema="SampleSchema.xml"]  >  
   <updg:before>  
       <ElementName />  
      [<ElementName .../>... ]  
   </updg:before>  
    [<updg:after>  
    </updg:after>]  
  </updg:sync>  
</ROOT>  

アップデートグラムが削除操作のみを実行している場合は、 <after> タグを省略できます。 省略可能な mapping-schema 属性を指定しない場合、アップデートグラムで指定された <ElementName> はデータベース テーブルにマップされ、子要素または属性はテーブル内の列にマップされます。

アップデートグラムで指定された要素がテーブル内の複数の行と一致するか、行と一致しない場合、アップデートグラムはエラーを返し、 <sync> ブロック全体を取り消します。 アップデートグラム内の要素で削除できるのは、一度に 1 つのレコードだけです。

この例では、アップデートグラムでマッピング スキーマを指定せず、既定のマッピングを使用します。 マッピング スキーマを使用するアップデートグラムのその他の例については、「 アップデートグラム (SQLXML 4.0)での注釈付きマッピング スキーマの指定」を参照してください。

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

A. アップデートグラムを使用してレコードを削除する

次のアップデートグラムでは、HumanResources.Shift テーブルから 2 つのレコードを削除します。

この例のアップデートグラムでは、マッピング スキーマを指定しません。 したがって、アップデートグラムでは既定のマッピングが使用されます。このマッピングでは、要素名はテーブル名にマップされ、属性または副要素は列にマップされます。

この最初のアップデートグラムは属性中心であり、 <fore> ブロック内の 2 つのシフト (昼と夜) を識別します。 <after> ブロックに対応するレコードがないため、これは削除操作です。

<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram">  
<updg:sync >  
  <updg:before>  
       <HumanResources.Shift ShiftID="4"  
                        Name="Day-Evening"  
                        StartTime="1900-01-01 11:00:00.000"  
                        EndTime="1900-01-01 19:00:00.000"  
                        ModifiedDate="2004-01-01 00:00:00.000" />  
       <HumanResources.Shift ShiftID="5"  
                        Name="Evening-Night"  
                        StartTime="1900-01-01 19:00:00.000"  
                        EndTime="1900-01-01 03:00:00.000"  
                        ModifiedDate="2004-01-01 00:00:00.000" />  
  </updg:before>  
  <updg:after>  
  </updg:after>  
</updg:sync>  
</ROOT>  
アップデートグラムをテストするには
  1. XML アップデートグラムを使用したデータの挿入 (SQLXML 4.0)完全な例 B (「アップデートグラムを使用して複数のレコードを挿入する」)。

  2. 上記のアップデートグラムをメモ帳にコピーし、 XML アップデートグラムを使用したデータの挿入 (SQLXML 4.0)) の完了に使用したのと同じフォルダーにUpdategram-RemoveShifts.xmlとして保存します (「アップデートグラムを使用して複数のレコードを挿入する」)。

  3. SQLXML 4.0 テスト スクリプト (Sqlxml4test.vbs) を作成し、それを使用してアップデートグラムを実行します。

    詳細については、「ADO を使用した SQLXML 4.0 クエリの実行」を参照してください。

参照

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