使用 XML updategram 删除数据 (SQLXML 4.0)

适用于:SQL Server Azure SQL 数据库

updategram 指示在前>块中出现记录实例时<删除操作,且后>块中<没有相应的记录。 在这种情况下,updategram 将从数据库中删除前>块中的<记录。

下面是 updategram 的删除操作格式:

<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>  

如果 updategram 仅执行删除操作,则可以省略 <后> 标记。 如果未指定可选的映射架构属性,<updategram 中指定的 ElementName> 将映射到数据库表,子元素或属性映射到表中的列。

如果 updategram 中指定的元素匹配表中的多个行,或者与任何行不匹配,则 updategram 将返回错误并取消整个 <同步> 块。 updategram 中的元素每次只能删除一个记录。

示例

本节中的示例使用默认映射(即未在 updategram 中指定映射架构)。 有关使用映射架构的更新报的更多示例,请参阅在 Updategram 中指定带批注的映射架构(SQLXML 4.0)。

若要使用以下示例创建工作示例,必须满足运行 SQLXML 示例的要求中指定的要求。

A. 使用 updategram 删除记录

以下 updategram 将从 HumanResources.Shift 表中删除两个记录。

在这些示例中,updategram 不指定映射架构。 因此,updategram 使用默认映射,其中元素名称映射到表名称,而属性或子元素映射到列。

第一个 updategram 以属性为中心的,在前>一个块中<标识两个班次(日晚和晚夜)。 由于后<>块中没有相应的记录,因此这是一个删除操作。

<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>  
测试 updategram
  1. 在“使用 XML Updategram 插入数据”(SQLXML 4.0)中的完整示例 B(“使用 updategram 插入多个记录”。

  2. 将上面的 updategram 复制到记事本,并将其另存为与用于完成(“使用 updategram 插入多个记录” )所在的文件夹中Updategram-RemoveShifts.xml,以使用 XML 更新报(SQLXML 4.0)插入数据。

  3. 创建并使用 SQLXML 4.0 测试脚本 (Sqlxml4test.vbs) 以执行 updategram。

    有关详细信息,请参阅使用 ADO 执行 SQLXML 4.0 查询

另请参阅

updategram 安全注意事项 (SQLXML 4.0)