Sdílet prostřednictvím


Mazání dat pomocí XML Updategramů (SQLXML 4.0)

platí pro:SQL Serverazure SQL Database

Updategram označuje operaci mazání, když se instance záznamu objeví v bloku <před> a v bloku <po záznamech> nejsou žádné odpovídající záznamy. V tomto případě updategram smaže záznam v bloku <před> z databáze.

Toto je formát updategramu pro operaci mazání:

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

Štítek <After> můžete vynechat, pokud updategram provádí pouze operaci mazání. Pokud nespecifikujete volitelný atribut mapping-scheme, ElementName<> uvedený v updategramu se mapuje na databázovou tabulku a podprvky nebo atributy se mapují na sloupce v tabulce.

Pokud prvek uvedený v updategramu buď odpovídá více řádkům v tabulce, nebo neodpovídá žádnému řádku, updategram vrátí chybu a zruší celý<> synchronizační blok. V updategramu může být v updategramu smazán pouze jeden záznam najednou.

Examples

Příklady v této sekci používají výchozí mapování (to znamená, že v updategramu není specifikováno žádné mapovací schéma). Další příklady aktualizačních diagramů, které používají schémata mapování, najdete v tématu Určení schématu mapování s poznámkami v aktualgramu (SQLXML 4.0).

Pokud chcete vytvořit pracovní ukázky pomocí následujících příkladů, musíte splňovat požadavky uvedené v části Požadavky pro spouštění příkladů SQLXML.

A. Smazání záznamu pomocí updategramu

Následující updategramy mažou dva záznamy z tabulky HumanResources.Shift.

V těchto příkladech aktualizační gram nespecifikuje mapovací schéma. Proto updategram používá výchozí mapování, kdy název prvku odpovídá názvu tabulky a atributy nebo podprvky sloupcům.

Tento první updategram je zaměřený na atributy a identifikuje dva posuny (Day-Evening a Evening-Night) v bloku <předtím> . Protože v následném bloku <> není odpovídající záznam, jedná se o operaci odstranění.

<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>  
Pro testování updategramu
  1. Kompletně uveďte příklad B ("Vkládání více záznamů pomocí updategramu") v Inserting Data Using XML Updategrams (SQLXML 4.0).

  2. Zkopírujte výše uvedený updategram do Notepadu a uložit jej jako Updategram-RemoveShifts.xml do stejné složky, kde bylo použito k dokončení ("Vkládání více záznamů pomocí updategramu") v Inserting Data Using XML Updategrams (SQLXML 4.0).

  3. Vytvořte a použijte testovací skript SQLXML 4.0 (Sqlxml4test.vbs) k vykonání updategramu.

    Další informace naleznete v tématu Použití ADO ke spouštění dotazů SQLXML 4.0.

Viz také

Důležité informace o zabezpečení updategramu (SQLXML 4.0)