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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2011, 21:52   #1
wm_leviathan
Форумчанин
 
Аватар для wm_leviathan
 
Регистрация: 17.02.2010
Сообщений: 399
По умолчанию c# из OdbcDataReader в dataGrid

Доброго времени суток всем. есть SQL сервер (HyTech sql server), подключаюсь к нему через ODBC драйвер (драйвер шел с сервером)
Код:
        // Переменная для соединения с базой данных
        OdbcConnection sampleConnect = null;
        // Переменная для выполнения запроса
        OdbcCommand sampleCommand;
        // Переменная для чтения полученных данных из базы 
        OdbcDataReader sampleReader = null;

public Form1()
        {
            InitializeComponent();
                             
            string sampleConnection = @"Dsn=HyTech server;uid=HTADMIN;srv=tcpip:/localhost:1000;sn=Локальный;ct=N;fixall=N;msjet=N";
            sampleConnect = new OdbcConnection(sampleConnection);
            // Открываем соединение с базой 
            sampleConnect.Open();
                               
            sql = textBox1.Text;// содержит SQL скрипт
           
        }

//далее по нажатию кнопки открыть должен выполниться скрипт и //результат отобразиться в dataGrid
private void BtnOpen_Click(object sender, EventArgs e)
        {

            sampleCommand = new OdbcCommand(sql);
            // Стыкуем с открытым соединением
            sampleCommand.Connection = sampleConnect;
            // Выполняем запрос на чтение данных
            sampleReader = sampleCommand.ExecuteReader();
            // Количество столбцов, полученных в результате работы запроса
            sampleCountColumns = sampleReader.FieldCount;
            datagrid.DataSource = sampleReader;
            datagrid.Update();
           

            if (sampleReader.HasRows)  
 {  
     listBox1.BeginUpdate();
     while (sampleReader.Read())  
     {
         listBox1.Items.Add(sampleReader.GetString(0));  
     }
     listBox1.EndUpdate();  
 }  

            sampleConnect.Close();
не знаю почему но данные не отображаются. добавил попутно загрузку результата в ListBox там все нормально отображается. в чем причина?
ЗЫ камнями не забрасывайте я только недавно начал учить шарп.
ЗЫЫ метод SqlConnection не подходит выдает ошибки придется наверно только odbcConnection
PSSS через sqlDataAdapter + DataSet оже не получается
Код:
sqlDataAdapter1.Fill(dSet);
на этой строке когда заполняется DataSet выдает ошибку "Драйвер не поддерживает данную функцию". придется наверно только через odbcDataReader Вообщем я в полном ступоре. надеюсь на любую помощь.
wm_leviathan вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DataGrid и парсинг.. LT. Общие вопросы .NET 3 22.09.2010 18:31
DataGrid C# Dizell Общие вопросы .NET 2 22.07.2010 16:59
keypress datagrid tigrend Общие вопросы .NET 0 11.05.2010 08:27
обновление DataGrid balamut Общие вопросы .NET 0 29.03.2010 22:55