2013-11-12 1 views
0

У меня в таблице памяти (DataTable), я хочу обновить таблицу SQL с помощью DataTable за один раз (Массовое обновление). Я знаю, как массировать вставки данных из таблицы DataTable в SQL. Есть ли способ массового обновления?Обновление таблицы SQL-сервера с использованием Datatbale

ответ

0

EDITED: Неправильный исходный вопрос. Вот «массовое обновление»:

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

Вы можете использовать один из методов UpdateDataSet() блока данных MS Enterprise Library.

Они будут считывать строки (добавлять, обновлять, удалять) каждой строки и выполнять команду, названную в методе UpdateDataSet(). С разумным сервером базы данных это может обрабатывать несколько тысяч записей за несколько секунд.

Единственный недостаток, который я нашел с этим, заключается в том, что он не может вернуть вновь вставленные значения IDENTITY, но его достаточно легко выбрать из базы данных после того, как вставка завершилась и переназначить их в datatable.

 Смежные вопросы

  • Нет связанных вопросов^_^