Технология Microsoft ADO.NET


Обработка исключений


Подключение к базе данных представляет собой одно из слабых мест в работе программы. В силу самых разных причин клиент может не получить доступ к базе данных. Поэтому при создании приложения следует обязательно включать обработку исключений и возможность предоставления пользователю информации о них.

Для получения специализированных сообщений при возникновении ошибок подключения к базе данных Microsoft SQL Server используются классы SqlException и SqlError. Объекты этих классов можно применять для перехвата номеров ошибок, возвращаемых базой данных (таблица 4.2):

Таблица 4.2. Ошибки SQL Server

Номер ошибки Описание
17 Неверное имя сервера
4060 Неверное название базы данных
18456 Неверное имя пользователя или пароль

Дополнительно вводятся уровни ошибок SQL Server, позволяющие охарактеризовать причину проблемы и ее сложность (таблица 4.3):

Таблица 4.3. Уровни ошибок SQL Server

Интервал возвращаемых значений Описание Действие
11-16 Ошибка, созданная пользователем Пользователь должен повторно ввести верные данные
17-19 Ошибки программного обеспечения или оборудования Пользователь может продолжать работу, но некоторые запросы будут недоступны. Соединение остается открытым
20-25 Ошибки программного обеспечения или оборудования Сервер закрывает соединение. Пользователь должен открыть его снова

Создайте новое Windows-приложение и назовите его "ExceptionsSQL". Свойству Size формы устанавливаем значение "600;380". Добавляем на форму элемент управления DataGrid, его свойству Dock устанавливаем значение "Fill". Перетаскиваем элемент Panel, определяем следующие его свойства:

panel1, свойство Значение
Dock Right
Location 392; 0
Size 200; 346

На панели размещаем четыре текстовых поля, надпись и кнопку:

textBox1, свойство Значение
Name txtDataSource
Location 8; 8
Size 184; 20
Text Введите название сервера
textBox2, свойство Значение
Name txtInitialCatalog
Location 8; 40
Size 184; 20
Text Введите название базы данных
textBox3, свойство Значение
Name txtUserID
Location 8; 72
Size 184; 20
Text Введите имя пользователя
textBox4, свойство Значение
Name txtPassword
Location 8; 104
Size 184; 20
Text Введите пароль1)
label1, свойство Значение
Location 16; 136
Size 176; 160
Text
button1, свойство Значение
Name btnConnect
Location 56; 312
Size 96; 23
Text Соединение




Начало  Назад  Вперед



Книжный магазин