Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/22: Рейтинг темы: голосов - 22, средняя оценка - 4.64
 Аватар для TopolM
13 / 13 / 2
Регистрация: 31.03.2013
Сообщений: 107

Вывести запрос в datagridview

24.07.2013, 23:32. Показов 4596. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток
Имеется схема Oracl, отдельным классом я настроил подключение к ней, подключается успешно.
Хочу сделать так, чтоб при нажатии кнопки на главной форме заполнялся dataGridView в соответствии с передаваемым SQL запросом.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
namespace ORACL_WFA
{
   public class orcl:Form1 // Класс отвечающий за подключение к схеме (HR)
    {
       
        public Boolean status()
        {
            try
            {
                
                string conString = "User Id=HR;Password=hr;" +
                "Data Source=SlashBuster-PC.mshome.net:1521/orcl;Pooling=false;";
                OracleConnection con = new OracleConnection();
                con.ConnectionString = conString;
                con.Open();
                return true;
            }
            catch (Exception ex)
            {
                string vv = Convert.ToString(ex);
                MessageBox.Show(vv,"Ошибка",MessageBoxButtons.OK,MessageBoxIcon.Error);
                return false;
            }  
 
        }
     
    }
}
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
namespace ORACL_WFA
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
         
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            orcl oracl = new orcl();
          Boolean accept = oracl.status();
          if (accept == true)
          {
              MessageBox.Show("Соединение со схемой успешно установленно!", "Статус", MessageBoxButtons.OK, MessageBoxIcon.Information);
          }
          
        }
 
        private void button2_Click(object sender, EventArgs e) 
        {
            string comText = ("SELECT * FROM DEPARTMENTS");
            OracleCommand cmd = new OracleCommand();
            cmd.CommandText = comText;
            DataTable myTable = new DataTable();
            OracleDataAdapter myAdapter = new OracleDataAdapter(cmd);
            myAdapter.Fill(myTable);
            BindingSource bind = new BindingSource();
            bind.DataSource = myTable;
            dataGridView1.DataSource = bind.DataSource;
            
 
        }
    }
}
Сначала я пытался сделать отдельный класс с методом, которому бы передавался SQL запрос в виде строки,а потом он бы передавал значений в datagridview, но что-то, я так и не сообразил как его довести до ума.
P.S Перепробовал уже уйму способов и всё как то ни 1 ни привёл к положительному результату.
P.S.S Извиняюсь заранее если некорректно излагаю мысли.

Добавлено через 55 минут
Уже проблему с переносом запроса в DataGridView решил, но сам не понял, что случилось)
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 private void button2_Click(object sender, EventArgs e) 
        {
            //string comText = ("SELECT * FROM DEPARTMENTS");
           /* OracleCommand cmd = new OracleCommand();
            cmd.CommandText = comText;
            DataTable myTable = new DataTable();
            OracleDataAdapter myAdapter = new OracleDataAdapter(cmd);
            myAdapter.Fill(myTable);
            BindingSource bind = new BindingSource();
            bind.DataSource = myTable;
            dataGridView1.DataSource = bind.DataSource;*/
             string conString = "User Id=HR;Password=hr;" +
                "Data Source=SlashBuster-PC.mshome.net:1521/orcl;Pooling=false;";
                OracleConnection con = new OracleConnection( conString);
 
                OracleDataAdapter adapter = new OracleDataAdapter("SELECT * FROM DEPARTMENTS", con);
                DataSet dataset = new DataSet();
                adapter.Fill(dataset);
                dataGridView1.DataSource = dataset.Tables[0];
                adapter.Update(dataset);
        }
Волнует теперь такой вопрос: как сделать такой класс с методом, чтоб ему можно было бы передать SQL запрос в виде string, а он вывел бы информацию в DataGridView, а то у меня всё ни как не выходит)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.07.2013, 23:32
Ответы с готовыми решениями:

Вывести результат запроса в DataGridView (запрос из нескольких таблиц)
Прошу помощи, не могу вывести результат запроса в котором участвует более 1 таблицы. Вот работающий код на вывод запроса к 1 таблице: ...

DataGridView и Access, составить запрос для dataGridView
У меня есть БД Access, в ней таблица , а в таблице два столбца, один , другой И заполнены они, к примеру, таким образом: ...

запрос в DataGridView
Ребят, программка должна загружать из база данных данные, которые соответствуют текущей дате.... скажем текущая дата - это переменная...

2
 Аватар для Cupko
658 / 595 / 171
Регистрация: 17.07.2012
Сообщений: 1,682
Записей в блоге: 1
25.07.2013, 04:56
Цитата Сообщение от TopolM Посмотреть сообщение
Уже проблему с переносом запроса в DataGridView решил, но сам не понял, что случилось)
Не видел у вас привязки команды к соединению.
Цитата Сообщение от TopolM Посмотреть сообщение
Волнует теперь такой вопрос: как сделать такой класс с методом, чтоб ему можно было бы передать SQL запрос в виде string, а он вывел бы информацию в DataGridView, а то у меня всё ни как не выходит)
А в чем, собственно, проблема? Создаете метод, принимаете стрингу с запросом, возвращаете DataTable/BindingSource/... или ничего не возвращаете. А в методе уже создаете соединение, отправляете запрос и возвращаете то, что вам требуется.
1
 Аватар для TopolM
13 / 13 / 2
Регистрация: 31.03.2013
Сообщений: 107
25.07.2013, 10:25  [ТС]
Цитата Сообщение от Cupko Посмотреть сообщение
А в чем, собственно, проблема? Создаете метод, принимаете стрингу с запросом, возвращаете DataTable/BindingSource/... или ничего не возвращаете. А в методе уже создаете соединение, отправляете запрос и возвращаете то, что вам требуется.
Не знаю как по понятнее это объяснить, но когда я создаю отдельный класс с методом, то он не видет элементы с главной формы такие как dataGridView1, dataSet, и соответственно из-за этого я и не могу передать информацию в dataGridView1.
P.S. на счёт первого вопроса всё нормально, как бы работает- обрабатывает любый SQL запросы SELECT....

Добавлено через 31 минуту
Всё последняя проблема тоже решилась, аж смешно сказать как я тупил
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.07.2013, 10:25
Помогаю со студенческими работами здесь

Передать запрос в dataGridView?
Здравствуйте друзья, как мне в dataGridView передать этот запрос для отображения в нем результат полученного от запроса. можно так...

Запрос Delete из DataGridView
Доброе утро! Подскажите пожалуйста, как правильно написать запрос на удаление и обновление базы. Есть таблица...

DataGridView и простой запрос
Доброго времени суток! Есть такой DataGridView Надо отобразить ФИО и количество отелей, что соответствует запросу SELECT fio,...

Запрос на заполнение datagridview
Доброго времени суток, необходимо составить запрос на заполнение grid, чтобы за место id_airports_in, id_airports_out выводилось название...

DataGridView и запрос SQL
Приветствую, друзья. Возник такой вопрос. В проекте есть 2 формы, между собой никак не связанные. Речь пойдет о второй форме. На...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru