Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Un updategram indica un'operazione di eliminazione quando viene visualizzata un'istanza di <record nel blocco precedente> senza record corrispondenti nel <blocco after> . In questo caso, l'updategram elimina il record nel <blocco prima> del database.
Questo è il formato updategram per un'operazione di eliminazione:
<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>
È possibile omettere il <tag after> se l'updategram esegue solo un'operazione di eliminazione. Se non si specifica l'attributo facoltativomapping-schema, l'elemento< ElementName> specificato nell'updategram esegue il mapping a una tabella di database e gli elementi o gli attributi figlio eseguono il mapping alle colonne della tabella.
Se un elemento specificato nell'updategram corrisponde a più righe della tabella o non corrisponde ad alcuna riga, l'updategram restituisce un errore e annulla l'intero <blocco di sincronizzazione> . È possibile eliminare un solo record alla volta da un elemento nell'updategram.
Esempi
Gli esempi in questa sezione usano il mapping predefinito, ovvero non viene specificato alcuno schema di mapping nell'updategram. Per altri esempi di updategram che usano schemi di mapping, vedere Specifica di uno schema di mapping con annotazioni in un updategram (SQLXML 4.0).
Per creare esempi funzionanti usando gli esempi seguenti, è necessario soddisfare i requisiti specificati in Requisiti per l'esecuzione di esempi SQLXML.
Un. Eliminazione di un record tramite un updategram
Gli updategram seguenti eliminano due record dalla tabella HumanResources.Shift.
In questi esempi l'updategram non specifica uno schema di mapping. Pertanto, l'updategram usa il mapping predefinito, in cui il nome dell'elemento esegue il mapping al nome della tabella e agli attributi o ai sottoelementi viene eseguito il mapping alle colonne.
Questo primo updategram è incentrato sugli attributi e identifica due turni (Day-Evening e Evening-Night) nel <blocco prima> . Poiché nel blocco after> non è presente alcun record< corrispondente, si tratta di un'operazione di eliminazione.
<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>
Per testare l'updategram
Esempio B completo ("Inserimento di più record tramite un updategram") in Inserimento di dati tramite updategram XML (SQLXML 4.0).
Copiare l'updategram precedente in Blocco note e salvarlo come Updategram-RemoveShifts.xml nella stessa cartella usata per completare ("Inserimento di più record tramite un updategram") in Inserimento di dati tramite updategram XML (SQLXML 4.0).
Creare e usare lo script di test SQLXML 4.0 (Sqlxml4test.vbs) per eseguire l'updategram.
Per altre informazioni, vedere Uso di ADO per eseguire query SQLXML 4.0.