Вход/Регистрация
Обработка баз данных на Visual Basic®.NET
вернуться

Прайс Кевин Т.

Шрифт:

CREATE TABLE tblStateZipCodes (

 ZipCode char (5) NOT NULL,

 State char (2) NOT NULL

)

Теперь нужно изменить исходную форму Form1, выполнив ряд действий.

1. Откройте форму Form1 в интегрированной среде разработки Visual Studio .NET.

2. В верхнем левом углу формы создайте еще одну кнопку, перетаскивая ее пиктограмму из панели элементов управления.

3. В окне свойств Properties укажите значение btnNonQuery для свойства (Name) и значение ExecuteNonQuery для свойства Text.

Затем создайте код подпрограммы btnNonQuery_Click, который приведен в листинге 4.4.

Листинг 4.4. Код создания таблицы базы данных с помощью объектов пространства имен OleDb

Private Sub btnNonQuery_Click(ByVal sender As System.Object, _

 ByVal e As System.EventArgs) Handles btnNonQuery.Click

 ' Создание экземпляра объекта Connection.

 Dim cnn As OleDbConnection = New OleDbConnection( _

"provider=SQLOLEDB;server=localhost;uid=sa;database=pubs")

 Dim sql As String Dim result As Integer

 ' Создание экземпляра объекта Command.

 Dim cmd As OleDbCommand = New OleDbCommand

 ' Указание подключения и текста команды

 cmd.Connection = cnn

 cmd.CommandType = CommandType.Text

 ' Указание команды SQL для создания новой таблицы

 sql = "CREATE TABLE tblStateZipCodes (" & _

"ZipCode char (5) NOT NULL, " & _

"State char (2) NOT NULL) "

 MsgBox(sql) cmd.CommandText = sql

 ' Открытие подключения перед вызовом метода ExecuteNonQuery.

 cnn.Open

 ' Для обработки исключительных ситуаций нужно поместить

 ' код в блоке Try-Catch, потому что неудачное выполнение

 ' команды ТАКЖЕ генерирует ошибку времени выполнения.

 Try

result = cmd.ExecuteNonQuery

 Catch ex As Exception

' Отображение сообщения об ошибке.

MessageBox.Show(ex.Message)

 End Try

 ' Вывод результатов выполнения команды.

 If result = -1 Then

MessageBox.Show("Command completed successfully")

' MessageBox.Show("Команда выполнена успешно")

 Else

MessageBox.Show("Command execution failed")

' MessageBox.Show("Команда не выполнена")

 End If

 cnn.Close

End Sub

После запуска полученного приложения и щелчка на кнопке ExecuteNonQuery сначала появится диалоговое окно с сообщением об успешном выполнении команды. Правильность выполнения команды можно проверить, просматривая список таблиц базы данных pubs в диалоговом окне Server Explorer интегрированной среды разработки Visual Studio .NET (которое описывается в главе 1, "Основы построения баз данных") или в программе SQL Server Enterprise Manager (которая рассматривается в главе 3, "Знакомство с SQL Server 2000").

При повторном щелчке на кнопке ExecuteNonQuery появятся два диалоговых окна с сообщениями: одно с сообщением о возникшей исключительной ситуации (оно создается блоком обработки исключительных ситуаций try-catch), а другое — о неудачном выполнении команды.

Аналогичным способом можно создать представление или хранимую процедуру. Для создания представления EmployeeJobs_view, которое возвращает отсортированный по должностям перечень сотрудников с указанием их имен, фамилий и должностей, замените команду SQL в листинге 4.4 приведенной ниже командой.

sql = "CREATE VIEW EmployeeJobs_view AS" & _

 "SELECT TOP 100 PERCENT jobs. job_desc," & _

 "employee.fname, employee.lname" &_

 "FROM jobs INNER JOIN" & _

 "employee ON jobs. job_id = employee. job_id &_

 "ORDER BY jobs.job_desc"

НА ЗАМЕТКУ

Для включения предложения ORDER BY в определение представления с сортировкой результатов нужно включить в команду SELECT предложение ТОР.

  • Читать дальше
  • 1
  • ...
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: