Udostępnij przez


Usuwanie danych za pomocą Updategrams XML (SQLXML 4.0)

An updategram wskazuje operacji usunięcia instancji rekordu pojawiają się w <before> blok z odpowiednich rekordów w <after> blok. W takim przypadek updategram powoduje usunięcie rekordu w <before> blokowanie z bazy danych.

Jest to format updategram dla operacji usunięcia:

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

Można pominąć <after> znacznik, jeśli updategram wykonywania operacji usuwania. Jeśli nie zostanie określona opcjonalna mapping-schema atrybut, <ElementName> określone w mapach updategram z tabelą bazy danych i podrzędność elementów lub atrybutów mapy do kolumn w tabela.

Jeśli element określony w updategram odpowiada więcej niż jeden wiersz w tabela lub nie pasuje do dowolnego wiersza, the updategram zwraca błąd i anuluje cały <sync> blok. Tylko jeden rekord w danej chwili można usunąć przez element the updategram.

Przykłady

Przykłady w tej sekcji należy użyć domyślnego mapowania (czyli nie mapowania schematu jest określona w updategram).Aby uzyskać więcej przykładów updategrams korzystające z mapowania schematów zobacz Określanie adnotacjami mapowanie schematu w Updategram (SQLXML 4.0).

Aby utworzyć próbek pracy przy użyciu poniższych przykładach, musi spełniać wymagania określone w Wymagania dotyczące uruchamianie SQLXML przykłady.

A.Usuwanie rekordu za pomocą updategram

Następujące updategrams usuwa dwa rekordy z tabela HumanResources.Shift.

W tych przykładach updategram nie określono mapowania schematu.Dlatego updategram używa domyślnego mapowania, w którym nazwa elementu jest mapowany na nazwę tabela i atrybuty lub podelementy mapy do kolumn.

To pierwszy updategram jest zorientowane na atrybut i identyfikuje dwie zmiany (dnia wieczorem i nocą wieczorem) w <before> blok. Ponieważ brak odpowiedniego rekordu w <after> blok, jest to operacji usuwania.

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

Aby przetestować updategram

  1. Wypełnij w przykładzie B ("Wstawianie wielu rekordów przy użyciu updategram") Wstawianie danych za pomocą Updategrams XML (SQLXML 4.0).

  2. Kopiowanie updategram powyżej do Notatnika i zapisz go jako RemoveShifts.xml Updategram w tym samym folderze, jak został użyty do wykonania ("Wstawianie wielu rekordów przy użyciu updategram „) w Wstawianie danych za pomocą Updategrams XML (SQLXML 4.0).

  3. Tworzenie i wykonać updategram za pomocą skryptu testu 4.0 SQLXML (Sqlxml4test.vbs).

    Aby uzyskać więcej informacji zobaczPrzy użyciu obiektu ADO do wykonywania SQLXML bada 4.0.