Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > .NET для новичков > Firebird методы INSERT,UPDATE,DELETE |
Автор: mrVerus 26.4.2010, 12:23 |
Я недавно сел на C# поэтому возникают следующие вопросы: Есть GridView данные он получает из FBdataAdapter. Как изменения сделанные пользователем в GridView залить в обратно в базу. Знаю что в FBdataadapter есть методы такие как INSERT, UPDATE, DELETE, только механизм работы их не ясен. Как происходит обновления базы7 Например в таблице GridView пользователь внес изменения в нескольких записях, как должно произойти изменения в БД с помощью UPDATE. Есть скрипт UPDATE, он что прокатится по всему массиву записей таблицы7 Помогите пожалуйста |
Автор: mrVerus 27.4.2010, 21:27 |
Как работать с firebird7 Вся литература приводит примеры в режиме дизайн-тайма. Научился только получать данные БД по средствам SQL в dataGridView, а как залить изменения из gridview'a в BD7 Кто нибуть приведите пример7 ![]() |
Автор: mrVerus 28.4.2010, 08:21 |
Ладно видимо меня никто не понял. Вопрос такой, есть команды INSERT,DELETE,UPDATE и SELECT. Команда SELECT=”select * from t123”; DataSet ds=new DataSet; FbDataAdapter da=new FbDataAdapter(); da.SelectCommand=new FbCommand(“select * from t123”, connstr); da.fill(ds); Следовательно в DataGrid отобразит всю таблицу, (предупреждаю код примерный) Вот впишу команды в Insert,Delete,Update, как они будут генерироваться. Для синхронизации данных м/у БД и данными введенными пользователем существует метод .update(ds). При вызове такого метода он автоматически вызовет команды SQL7 Простите недавно пришел из Delphi |
Автор: Heinzz 28.4.2010, 08:35 |
Используйте http://www.firebirdsql.org/dotnetfirebird/documentation/api/1.7/FirebirdSql.Data.Firebird.FbCommandBuilder.html если ваша база данный не распределенная. |
Автор: mrVerus 28.4.2010, 09:26 |
А как им воспользоваться7 База данных работает через FBServer на удаленном ПК |
Автор: Heinzz 28.4.2010, 09:33 |
главное что на одном, так что просто это в connectionString укажите, разницы никакой нет. |
Автор: mrVerus 28.4.2010, 09:46 |
можно пример Добавлено через 7 минут и 28 секунд И вот еще при вызове метода .UPDATE(ds) команды SQL срабатыват автоматически7 Например пользователь в DataGrid'е изменил некаторые записи добавил новую. При .update выполнится соответ код, да? Это как аналог Post в Delphi? |
Автор: Heinzz 28.4.2010, 09:57 | ||
|
Автор: mrVerus 28.4.2010, 09:58 |
И нужно передать параметры из datagrid'a при update, итд7 Добавлено через 11 минут и 6 секунд ![]() |
Автор: Heinzz 28.4.2010, 10:32 | ||
пример для MSSql, у Вас просто немного другие классы.
|
Автор: mrVerus 28.4.2010, 11:08 |
ТЕ за открытием и закрытием соединения следить не нужно7 |
Автор: Heinzz 28.4.2010, 11:23 |
как видите в моем коде изменения производятся уже после закрытия соединения.![]() |
Автор: mrVerus 29.4.2010, 07:18 |
Заставил работать но без FbCommandBuilder |
Автор: KelTron 29.4.2010, 07:24 | ||||
Для адаптера не нужно открывать соединение, он сам всё сделает, так что это лишнее:
А если и надо открывать то лучше через using:
Так можно быть уверенным, что соединение будет закрыто в любом случае. |
Автор: mrVerus 29.4.2010, 07:30 |
Огроманое спасибо + Heinzz'у |