Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SQL-запросы в C#, Как правильно в TableAdapter? 
:(
    Опции темы
Softaz
Дата 12.3.2006, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


wasm
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 16.1.2006

Репутация: 4
Всего: 16



Простое приложение.
Кидаю на форму DataGridView, через мастера добавляю БД, определяю, какую таблицу отображать.

Автоматически появляются компоненты
dataTableAdaptor
dataDataSet
dataBindingSource

Пытаюсь удалить запись из таблицы Data.
Возникает исключение "Не был задан текст команды для командного объекта."
Что не так делаю?

Код

            dataTableAdapter.Connection.Open();
            dataTableAdapter.Connection.CreateCommand().CommandText = "DELETE FROM Data WHERE Cod_Ent = 17650";
            dataTableAdapter.Connection.CreateCommand().ExecuteNonQuery();
            dataTableAdapter.Connection.Close();



То же самое с выборкой данных

Код

            dataTableAdapter.Connection.Open();
            dataTableAdapter.Connection.CreateCommand().CommandText = "SELECT * FROM Data WHERE Cod_Ent = 17650";
            dataTableAdapter.Connection.CreateCommand().ExecuteReader();
            dataTableAdapter.Connection.Close();



Забегая вперед, вопрос: сразу ли отобразятся изменения в DataGridView. Если нет, как правильно ее обновлять.


--------------------
Разочарованный в .NET
PM MAIL WWW   Вверх
Exception
Дата 12.3.2006, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 2
Всего: 186



Дык каждый раз когда ты вызываешь CreateCommand, объект создается заново! Сохраняй результат в переменной...
PM   Вверх
Softaz
Дата 13.3.2006, 01:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


wasm
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 16.1.2006

Репутация: 4
Всего: 16



Точно, спасибо.
Код

            dataDataSet.Data.Clear();
            dataTableAdapter.Connection.Open();

            OleDbCommand post;
            post =  dataTableAdapter.Connection.CreateCommand();
            post.CommandText = "SELECT * FROM Data WHERE Cod_Ent = 17650";
            post.ExecuteReader();

            dataTableAdapter.Connection.Close();
            this.dataTableAdapter.Fill(this.dataDataSet.Data);

Последний вопрос: как сделать, чтобы в Grid результат отображался?
Почему-то после Fill отображается то, что было до запроса.
p.s.: все компоненты созданы мастером в настойках ничего не изменено.


--------------------
Разочарованный в .NET
PM MAIL WWW   Вверх
Exception
Дата 13.3.2006, 02:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 2
Всего: 186



А ты попробуй поэкспериментировать smile . Refresh вызови, или еще что smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0489 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.