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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отображение данных из таблицы БД 
V
    Опции темы
IgorDV
Дата 5.2.2008, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Приветствую.
У меня есть odbcConnection, через него подключаюсь к базе оракл. на форме лежит dataGridView. Вопрос: Как мне сделать так чтоб в гриде на форме отобразилась таблица, а точнее запрос: 
Код

select name_thems from dbutil.thems 
?
PM MAIL ICQ   Вверх
thomas
Дата 5.2.2008, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



IgorDV, 
Приветствую.
Надо создать обьект команда и его свойствам присвоить соответствующие значения:
 - свойство текст =  ваш запрос;
- свойство соединение = ваш odbcConnectionю
Далее создать обьект ДатаАдаптер на основании этой команды.
Обьявить обьект ДатаСет.
Потом выполнить метод Fill() для ДатаАдаптера, который создаст таблицу в ДатаСет и заполнит ее данными из вашей БД.
И наконец присвоить два свойства вашему dataGridView:
dataGridView.DataSource = myDataSet
dataGridView.DataMember = "имя таблицы".

Тогда ваш dataGridView будет отображать данные из таблицы ДатаСет.

Успехов.  smile 


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
IgorDV
Дата 5.2.2008, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо за исчерпывающий ответ! 
Есть вопросик:
dataGridView.DataMember = "имя таблицы".
какое имя в моем случае будет если я запросом данные выбираю, имя таблицы из запроса dbutil.thems?
PM MAIL ICQ   Вверх
thomas
Дата 5.2.2008, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



IgorDV, 
Когда ты пишешь
myDataAdapter.Fill(myDataSet, "имя таблицы")
второй параметр метода определяет имя твой таблицы в твоем датаСет. Ты его сам указываешь. Я обычно делаю так: в БД именую таблицы с префиксом tbl - tblThema, а в датаСет эта таблица будет иметь имя - thema. Тогда в коде сразу понятно о какой таблице идет речь, о той что в БД или о той что в ДС. Плюс ты знаешь, что это одна и таже таблицы, а не какая-то другая.
Соответственно для грида ты указываешь, что он должен брать данные из такого-то ДатаСета. И уточняешь какую именно таблицу отображать.
Ведь там могут быть разные таблицы и на форме у тебя может быть несколько гридов. Т.е. ДатаСет для них один и тот же, а таблицы для отображения разные.
 Надеюсь, понятно обьяснил.  smile 

Это сообщение отредактировал(а) thomas - 5.2.2008, 19:08


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
IgorDV
Дата 6.2.2008, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Понятно, только я не понял немного вот этого:
Далее создать обьект ДатаАдаптер на основании этой команды.

в odbcDataAdapter и odbcCommand не нашел не каких свойств связи между друг другом.
PM MAIL ICQ   Вверх
IgorDV
Дата 6.2.2008, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Разобрался, SelectCommand присвоил odbcCommand1... 
И закоментировал эти строки:
Код

// odbcDataAdapter1
// 
//this->odbcDataAdapter1->DeleteCommand = this->odbcCommand1;
//this->odbcDataAdapter1->InsertCommand = this->odbcCommand1;
this->odbcDataAdapter1->SelectCommand = this->odbcCommand1;
//this->odbcDataAdapter1->UpdateCommand = this->odbcCommand1;
// 

заработало.
PM MAIL ICQ   Вверх
thomas
Дата 6.2.2008, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



IgorDV, 
Приветствую.
Цитата

Понятно, только я не понял немного вот этого:
Далее создать обьект ДатаАдаптер на основании этой команды.

Тут я имел в виду, что датаАдаптер имеет конструктор, который в качестве параметра принимает обьект команда.
Либо используется конструктор без параметров, а потом соответствующему свойству обьекта датаАдаптер присваивается значение равное обьекту команда.

Синтаксис могу подсказать только на C# или VB.NET, на С++ не пишу.  

Если вопрос исчерпан, то не плохо бы пометить "Как решённый".

Удачи во всем.  smile 


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
IgorDV
Дата 6.2.2008, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я их статически создаю, я пока только изучаю среду... Т.к. я на билдере писал до этого и на делфи, мне немного непревычно в .NET
По мере втягивания в процес буду по мере необходимости создавать динамически объекты... smile Спасибо вам!
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

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

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

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


 




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


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

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