Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2014, 14:42   #1
Heng
Форумчанин
 
Регистрация: 27.02.2012
Сообщений: 117
По умолчанию Пересохранение Данных В БД

Не получается чет пересохранить

Есть таблица в которую я вывел данные из БД, и после изменения данных в таблице, пересохранить их в ту же БД
вот как я пробовал:
Код:
SqlConnection conn = new SqlConnection(@"Data Source=Rody-PC;AttachDbFilename=" + @"H:\PoliclinicaBD.mdf" + ";Integrated Security=True");
            SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM Spec_Categories", conn);
 
            da.Fill(Ds);
            da.Update(Ds);
Если честно то я не понимаю логики этих действий если можно еще и словами(алгоритм)(не этого кода, а в общем, алгоритма пересохранения)

Выдает ошибку: Для обновления требуется действительный UpdateCommand при передаче коллекции DataRow с измененными строками.

Последний раз редактировалось Heng; 16.03.2014 в 14:44.
Heng вне форума Ответить с цитированием
Старый 16.03.2014, 14:53   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

откуда вы поймете, если даже прочитать строчку русским по белому ленитесь, или читатьт не умеете?
eval вне форума Ответить с цитированием
Старый 16.03.2014, 15:44   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
da.Update(Ds);
А зачем Update? Может нужен Open?
Что ты хочешь сделать с запросом SELECT * FROM Spec_Categories?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.03.2014, 16:55   #4
Heng
Форумчанин
 
Регистрация: 27.02.2012
Сообщений: 117
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А зачем Update? Может нужен Open?
Что ты хочешь сделать с запросом SELECT * FROM Spec_Categories?
возможно она лишняя(копировал код из вставки в таблицу из БД), мне надо как-то из таблицы данные записать в БД
Heng вне форума Ответить с цитированием
Старый 16.03.2014, 17:02   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну вот теперь подробнее рассказывай: Из какой таблицы куда, почему и т.д.
А то ведь способов много и все они зависят от конкретного случая, т.е. скажем так косвенно-общие.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.03.2014, 17:07   #6
Heng
Форумчанин
 
Регистрация: 27.02.2012
Сообщений: 117
По умолчанию

есть множество таблиц (но пока возьмем одну)

вот этим кодом я вставляю в таблицу
Код:
DataSet Ds = new DataSet();//------ГЛОБАЛЬНО
 private void PrintInTable()
        {  
            SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;"+
"AttachDbFilename=F:\PoliclinicaBD.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
            SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM Spec_Categories", conn);
     
            Ds.Clear();          
            da.Fill(Ds);
            Table.DataSource = Ds.Tables[0];

        }
а теперь мне надо как-то после изменений в таблице перезаписать ее в БД

Последний раз редактировалось Stilet; 16.03.2014 в 19:40.
Heng вне форума Ответить с цитированием
Старый 16.03.2014, 19:45   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Э-э-эм... Тогда может лучше доверить это СУБД?:
Использовать запрос
Код:
insert into <нужная таблица> SELECT * FROM Spec_Categories
И метод ExecuteNonReader() для выполнения запроса, и пусть сама СУБД вставляет.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.03.2014, 16:30   #8
Heng
Форумчанин
 
Регистрация: 27.02.2012
Сообщений: 117
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Э-э-эм... Тогда может лучше доверить это СУБД?:
Использовать запрос
Код:
insert into <нужная таблица> SELECT * FROM Spec_Categories
И метод ExecuteNonReader() для выполнения запроса, и пусть сама СУБД вставляет.
если я так сделаю то данные добавятся в конец списка.
Heng вне форума Ответить с цитированием
Старый 17.03.2014, 20:57   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

О! А надо куда?
Или я чего-то не понимаю?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.03.2014, 21:21   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

а надо в шахматном порядке
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как совместить вставку данных формы с копированием данных самого листа? serikov Microsoft Office Excel 0 11.10.2011 10:20
как из динамических данных одной ячейки сформировать массив данных? gramp Microsoft Office Excel 6 26.12.2010 21:07
сортировка данных (пересчет возможных вариантов комбинаций, перенос данных в таблицу) Vitalik85 Microsoft Office Excel 4 12.08.2009 00:30
автоматическое пересохранение Окоча Юра Microsoft Office Word 10 18.03.2009 17:10