Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
gul2186
0 / 0 / 0
Регистрация: 28.01.2011
Сообщений: 27
1

Ошибка соединения с БД

18.04.2014, 15:16. Просмотров 726. Ответов 4
Метки нет (Все метки)

Здравствуйте! Я начала изучать технологию ado.net, C# тоже изучаю с недавнего времени. Создаю приложение на C#, которое должно выгружать данные из БД, созданной в SQL Server, и расположенной на одном и том же компьютере. При запуске моей программы вместо заполненной таблицы почему-то выходит пустой DataGridView в виде серого прямоугольника, хотя я все делала по книге. Посмотрите, пожалуйста, где тут может быть ошибка.
Код:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
private void Form1_Load(object sender, EventArgs e)
        {
            string strConn, strSQL, strXML;
            strConn = "Provider=SQLOLEDB;Data Source=SQLSERVER2012EXP;" +
                           "Initial Catalog=EB;User ID=Администратор;";
            strSQL = "SELECT LastName As Фамилия,FirstName As Имя,ParentName As Отчество from Employee";
            //создание подключения 
            OleDbConnection cn = new OleDbConnection(strConn);
            cn.Open();
 
            //OleDbCommand comm = new OleDbCommand(strSQL, cn);
            OleDbDataAdapter daEmployee = new OleDbDataAdapter(strSQL, strConn);
            //OleDbDataAdapter daEmployee = new OleDbDataAdapter(comm);
 
            DataSet ds = new DataSet();
            daEmployee.Fill(ds, "Employee");
            //считывание записей
            strXML = ds.GetXml();
            //указание источника данных для сетки данных
            dataGridView1.DataSource = ds;
            //указание имени таблицы в наборе данных
            dataGridView1.DataMember = "Employee";
            cn.Close();




}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.04.2014, 15:16
Ответы с готовыми решениями:

Ошибка "ExecuteReader требует открытого и доступного соединения. Текущее состояние соединения закрыто. "
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...

Ошибка соединения: error 26
Создал проект в C#. В VS в проекте создал БД .mdf (локальная). Вот код класса DAL: А это код...

Ошибка при открытии соединения Npgsql
Здравствуйте. Пытаюсь установить соединение с базой данных Postgre. using System; using...

При установлении соединения с SQL Server произошла ошибка
Здравствуйте! Пишу приложение на C# для работы с базой, висящей на MSSQL Server. Проблема...

При установлении соединения с SQL Server произошла ошибка
Что нужно делать чтоб устранить эту ошибку ? Поподробней пожалуйста

4
nmcf
6530 / 5754 / 2621
Регистрация: 14.04.2014
Сообщений: 24,493
18.04.2014, 15:47 2
Посмотри в отладчике открывается ли соединение и 16 строку, заполняется ли DataTable.
0
gul2186
0 / 0 / 0
Регистрация: 28.01.2011
Сообщений: 27
21.04.2014, 09:56  [ТС] 3
До 16 строки прога не доходит, так как зависает на строке "cn.Open();".
Ошибка такая:
ServerVersion "cn.ServerVersion" запустило исключение типа "System.InvalidOperationException"
string {System.InvalidOperationException}. Состояние соединения, соответственно, Closed.
В интернете подходящего решения этой проблемы не нашлось. Может, кто сталкивался с этим?
0
juninhonvp
3 / 3 / 2
Регистрация: 02.07.2013
Сообщений: 31
21.04.2014, 10:30 4
возможно в строке подключения ошибка. Вроде как не понял версию сервера. Тут примеры, может Provider указать как в примере.
0
nio
5977 / 3383 / 335
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
21.04.2014, 12:48 5
По меньшей мере странно то, что соединение с SQL Server делается через OleDbConnection, а не через SqlConnection.
И параметр Provider из строки подключения нужно убрать.
Также смущает параметр "User ID=Администратор" в строке подключения. Из этого следует, что на сервере используется смешанная аутентификация. А сервер точно допускает смешанную аутентификацию? Если допускает, то возникает 2 вопроса:
на сервере зарегистрирован пользователь с логином "Администратор"?
где пароль для входа пользователя "Администратор"?
0
21.04.2014, 12:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2014, 12:48

Ошибка при закрытии соединения после завершения потока, где это соединение было открыто
У меня в программе есть обновляющаяся статистика, и если пользователь запустил обновление, а потом...

При установлении соединения с SQL Server произошла ошибка, связанная с сетью или с определенным экземпляром
Всем привет, у меня такая проблема. Мне необходимо написать прогу в которой будет использоваться...

Ошибки СУБД: ошибка выделения памяти. Ошибка соединения с сервером 1С
Здравствуйте! Есть один сервер. На нем стоит MS SQL, 1С сервер и терминально подключаются...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru