Wprowadzenie do DataSets w SQLXML 4.0
Ten temat zawiera krótkie wprowadzenie do DataSets.
Format w formacie DiffGram
Jest to ogólny format w formacie DiffGram:
<?xml version="1.0"?>
<diffgr:diffgram
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"
xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<DataInstance>
...
</DataInstance>
[<diffgr:before>
...
</diffgr:before>]
[<diffgr:errors>
...
</diffgr:errors>]
</diffgr:diffgram>
Format w formacie DiffGram składa się z tych bloków:
<DataInstance>
Nazwa tego elementu DataInstance, używane do celów wyjaśnienie w tej dokumentacji.Na przykład, jeśli generowane z dataset w formacie DiffGram.NET Framework wartość nazwę właściwość zestawu danych będzie używany jako nazwa tego elementu.Blok ten zawiera wszystkie odpowiednie dane po zmianie, prawdopodobnie także dane, które nie zostały zmodyfikowane.Logiki przetwarzania w formacie DiffGram ignoruje elementy w tym blok, dla którego diffgr:hasChanges atrybut nie jest określony.<diffgr: przed>
Ten opcjonalny blok zawiera oryginalnego wystąpienia rekordu (elementów), które muszą zostać zaktualizowane lub usunięte.Tabele bazy danych modyfikowany (zaktualizowane lub usunięte) w formacie DiffGram musi pojawić się jako elementów najwyższego poziom w <przed> blok.<diffgr:errors>
Ten opcjonalny blok jest ignorowany przez logiki przetwarzania w formacie DiffGram.
Adnotacje w formacie DiffGram
Adnotacje są definiowane w obszarze nazw w formacie DiffGram "urn: schemas-microsoft-com: XML-w formacie diffgram-01":
Identyfikator
Atrybut ten jest stosowany do elementów w parą <przed> i <DataInstance> bloków.hasChanges
Wstaw lub operacji aktualizacji w formacie DiffGram należy określić atrybut z wartością dodaje się lub zmodyfikowane.Jeśli ten atrybut jest nieobecny, odpowiedni element w <DataInstance> jest ignorowany przez przetwarzanie logiki i aktualizacje nie są przeprowadzane.Dla próbek pracy, zobacz Przykłady w formacie DiffGram (SQLXML 4.0).parentID
Ten atrybut jest używany do określania relacji nadrzędny podrzędność między elementami w formacie DiffGram.Ten atrybut jest wyświetlana tylko w <przed> blok.Jest on używany przez SQLXML stosowania aktualizacji.Relacja typu nadrzędny podrzędność jest używany przy określaniu kolejności przetwarzania elementów w formacie DiffGram.
Opis logiki przetwarzania w formacie DiffGram
Przetwarzanie logiki zastosowań w formacie DiffGram pewne zasady, czy operacja jest Wstaw, aktualizowania lub usuwania operacji.Zasady te zostały opisane w poniższej tabela.
Operacja |
Opis |
---|---|
Wstaw |
W formacie DiffGram wskazuje operację wstawiania, gdy element zostanie wyświetlony w <DataInstance> blok, ale nie w odpowiednich <przed> blok oraz diffgr:hasChanges określony atrybut (diffgr:hasChanges = dodaje) w elemencie.W takim przypadek w formacie DiffGram wstawia wystąpienie rekordu określonym w <DataInstance> blok do bazy danych. Jeśli diffgr:hasChanges atrybut nie jest określony, element jest ignorowany przez logiki przetwarzania i Wstaw nie jest wykonywane.Dla próbek pracy, zobacz Przykłady w formacie DiffGram (SQLXML 4.0). |
Aktualizacja |
W formacie DiffGram wskazuje operacji aktualizacji, gdy element <przed> Blok, dla którego jest odpowiedni element w <DataInstance> bloku (oznacza to, że oba elementy mają diffgr:id atrybut z tą samą wartością) i diffgr: hasChanges atrybut jest określony przez wartość zmodyfikowane w elemencie w <DataInstance> bloku. Jeśli diffgr:hasChanges atrybut nie jest określony w elemencie w <DataInstance> blok, zwracany jest błąd przez przetwarzanie logiki.Dla próbek pracy, zobacz Przykłady w formacie DiffGram (SQLXML 4.0). Jeśli diffgr:parentID określonych w <przed> Blok, relacji nadrzędny podrzędność elementów, które są określone przez parentID są używane przy określaniu aktualizacji rekordów. |
Usuń |
W formacie DiffGram wskazuje operacji usuwania, gdy element zostanie wyświetlony w <przed> blok, ale nie w odpowiednich <DataInstance> blok.W takim przypadek w formacie DiffGram usuwa wystąpienie rekordu określonym w <przed> Blok z bazy danych.Dla próbek pracy, zobacz Przykłady w formacie DiffGram (SQLXML 4.0). Jeśli diffgr:parentID określonych w <przed> Blok, relacji nadrzędny podrzędność elementów, które są określone przez parentID są używane przy określaniu kolejności, w którym rekordy są usuwane. |
Ostrzeżenie
Nie można przekazać parametry do DataSets.