/ / Aggiorna tabella server SQL utilizzando Datatbale - c #, datatable, sqlbulkcopy

Aggiorna la tabella del server SQL utilizzando Datatbale - c #, datatable, sqlbulkcopy

Ho nella tabella di memoria (DataTable), voglioaggiornare la tabella SQL con l'aiuto del DataTable in un colpo solo (aggiornamento in blocco). So come inserire i dati di massa da DataTable alla tabella SQL. C'è un modo per aggiornare in massa?

risposte:

0 per risposta № 1

MODIFICATO: ha interpretato erroneamente la domanda originale. Ecco "l'aggiornamento collettivo":

UPDATE <table> SET tbl.value = dt.value
FROM @Datatable dt
INNER JOIN <table> tbl ON tbl.<id_column> = dt.<id_column>

0 per risposta № 2

È possibile utilizzare uno dei blocchi dati di MS Enterprise Library UpdateDataSet () metodi.

Questi leggeranno lo stato della riga (aggiungere, aggiornare,delete) di ogni riga ed eseguire il comando denominato nel metodo UpdateDataSet (). Con un server database ragionevole, questo può gestire alcune migliaia di record in pochi secondi.

L'unico inconveniente che ho trovato con questo è chenon può restituire valori IDENTITY appena inseriti, ma è abbastanza semplice selezionarli dal database dopo che l'inserimento è stato completato e rimapparli nel datatable.