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

Подключение к SQL Server 2008

03.07.2012, 08:49. Просмотров 2050. Ответов 2
Метки нет (Все метки)

Очень волнует вопрос как правильно организовать подключение к SQL.
Устанавливать соединение на сессию, т.е. на время работы приложения. Например при открытии формы установили соединение, при закрытии формы закрыли:
C#
1
2
3
4
5
6
7
8
9
private void Main_Load(object sender, EventArgs e)
        {
            connection = new SqlConnection("connection string");
            connection.Open();
        }
private void Main_FormClosed(object sender, FormClosedEventArgs e)
        {
            connection.Close();
        }
И при обращении к БД подсовывать SQLCommand это соединение
C#
1
2
SqlCommand command = new SqlCommand();
command.Connection = Main.connection;
Или же как написано во всех примерах стандартную конструкцию вида:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
using (SqlConnection conn = new SqlConnection(connection))
            {
                command.Connection = conn;                
                command.Prepare();
 
                conn.Open();
                try
                {
                    command.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    conn.Close();
                    command.Dispose();
                }
            }
Т.е. на одно обращение к БД одно открытие и одно закрытие соединения, выход из using удаляет объект SqlConnection.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.07.2012, 08:49
Ответы с готовыми решениями:

Подключение VS C# 2008 и SQL Server 2008
Добрый день уважаемые форумчане... Мне нужна ВАША помощь... Я искал в инете кучу информации о...

Подключение к БД MS SQL Server 2008
пробую в проэкте VS 2008 подключить БД на SQL Server 2008. На компе стоит именованный инстанс -...

Подключение по сети к MS SQL server 2008
Добрый день! На компьютере имеется свеже-установленный MS SQL server 2008. Имя сервера:...

Подключение базы данных MS SQL Server 2008
Здравствуйте! Имеется VS 2013 Pro и MS SQL Server 2008. База данных сама уже собрана, интерфейс...

Настройка SQL Server 2008 для работы с SQL Server Management Studio
Доброго времени суток. Подскажите пожалуйста, что нужно сделать для того, чтобы SQL Server...

2
turbanoff
Эксперт Java
4029 / 3764 / 743
Регистрация: 18.05.2010
Сообщений: 9,330
Записей в блоге: 11
Завершенные тесты: 1
03.07.2012, 09:11 2
Зависит от удаленности базы, и от того что форма с ней делает.
Если вся работы программы - запросы и обновление записей в базе, то конечно, стоит поддерживать соеднение на все время работы.
0
nio
5969 / 3375 / 335
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
03.07.2012, 10:21 3
Очень редко бывают ситуации, когда соединение должно оставаться открытым. Сам принцип "отсоединенных БД" говорит, что БД отключена от клиента. Скажем так: если процесс установления соединения больше времени необходимого для обработки данных, то соединение можно не закрывать. В принципе это сработает только в случае, если программа забирает данные с БД, автоматически их изменяет и сразу отправляет обратно в БД. Если данные обрабатываются пользователем, то соединение лучше закрывать.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.07.2012, 10:21

Добавление файла *.mdf. Ошибка "Должен быть установлен и запущен экспресс-выпуск SQL Server 2005 или SQL Server 2008"
Установлена Visual Studio 2010 и SQL Server 2008 R2 Standard. Хочу добавить в приложение файл базы...

Совместимость Microsoft SQL Server 2008 и Microsoft SQL Server 2016
Здравствуйте!Столкнулся с такой проблемой:написал программу на Visual Studio 2010(по техническим...

MS SQL SERVER 2008+С#
помогите! Хочу научиться освоить работу с базами данных MS SQL SERVER 2008 слава богу освоил, всего...


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

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

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