#c# #sql-server-2008 #datatable
#c# #sql-server-2008 #datatable
Вопрос:
У меня есть таблица sql с
ID(unique) Name status
1 A 0
2 B 0
В моем коде я извлекаю все данные в таблицу данных и выполняю некоторое кодирование.
Основываясь на результатах, я изменю результаты с 0 на 1 или 2
После этого мне нужно обновить их обратно до sql.
Моя идея состоит в том, чтобы создать временную таблицу, вставить в нее каждую строку .. а затем обновить их до реальной таблицы sql, удалив временную таблицу.
Не очень хорошо, я знаю. Вот почему я спрашиваю, есть ли лучший способ сделать это?
Ответ №1:
Вы можете обновить содержимое таблицы обратно, работая с CommandBuilder .
Взгляните на этот пример .
Комментарии:
1. Я слышал об этом, но я не уверен, как использовать это в моей ситуации, поскольку моя «update TBLSOMETHING set status= newstatus где id= idfromdatatable». могу ли я добавить этот запрос в sqldataadapter и задать параметры для этих двух переменных?
2. Вам нужно загрузить таблицу из базы данных с помощью datadapter, заполняющего datatable, затем изменить запись, которую вы хотите изменить непосредственно в datatable, и таким образом обновить целевую таблицу с помощью command builder, взгляните на пример, который я связал.
3. О, вот как это работает.. я неправильно подумал .. еще один вопрос, .Update () заменит только обновленные значения, а не всю таблицу целиком, rite? потому что, как я упоминал в своем вопросе, мой идентификатор — это уникальный номер с автоматическим увеличением. кстати, Tkz много..
4. Как правило, вы должны добавлять примеры кода к своему ответу в (слишком распространенном) случае, когда ссылки отключаются.