Читаем Обработка баз данных на Visual Basic®.NET полностью

<p>Завершение процесса с помощью команды KILL</p>

В SQL Server администратор может удалить процесс, например пользовательское подключение или блокировку базы данных, с помощью команды KILL. Обычно эта команда применяется для чрезвычайного прекращения пользовательского сеанса, устранения зависшего сеанса или удаления установленной пользователем блокировки данных и продолжения работы с ними. (Эти ситуации хотя и крайне редко, но все же встречаются, особенно в процессе создания приложения.)

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

Допустим, что после выполнения хранимой процедуры sp_who вы узнали номер процесса, например 10, который необходимо удалить. Для его удаления введите в окне Query программы SQL Query Analyzer команду

KILL 10

После выполнения этой команды указанный процесс будет немедленно удален.

НА ЗАМЕТКУ

Рекомендуется периодически выполнять процедуру sp_who, особенно в процессе создания приложения, только для того, чтобы знать, что происходит с вашей базой данных.

<p>Удаление объектов базы данных</p>

В SQL Server для удаления объектов используется команда DROP. Удаленный с ее помощью объект исчезает безвозвратно, причем удаляется не только структура объекта, но и его содержимое.

Для удаления объекта с помощью программы Enterprise Manager, например таблицы, выделите ее, щелкните правой кнопкой мыши и из контекстного меню выберите команду Delete.

А для удаления объекта из базы данных с помощью программы SQL Query Analyzer используйте команду DROP. Например, для удаления таблицы tblCustomer введите следующую команду:

DROP TABLE tblCustomer

<p>Бизнес-ситуация 3.2: SQL-сценарий для создания базы данных</p>

Для запуска примеров кода требуется запустить сценарий NoveltyDB.sql, который предназначен для создания и запуска базы данных Novelty. (Наверное, вы уже заглядывали в него и интересовались тем, что он делает.)

Поскольку структура базы данных может изменяться в процессе создания приложения, разработчику нужно периодически создавать сценарий для документирования текущей структуры базы данных, а также для автоматического создания (или воссоздания) базы данных. Хотя разработчик может обладать полным контролем и вручную создавать такие сценарии, но гораздо лучше применять для этого программу SQL Server Enterprise Manager. По крайней мере она прекрасно подходит для создания основы сценария и его последующего редактирования. Этот подход позволяет гораздо быстрее добиться решения поставленной задачи с меньшей вероятностью возникновения ошибок.

Разработчик базы данных для компании Jones Novelties Incorporated решил применить этот подход для создания корпоративной базы данных. Созданный им сценарий позволяет просто инсталлировать объекты базы данных на компьютере, на котором она даже не определена. Иначе говоря, сценарий выполняет все необходимые действия для создания и инсталляции базы данных и ее объектов на совершенно "пустом" компьютере, что обычно требуется при инсталляции системы на новом рабочем месте. На рис. 3.28 показана схема базы данных Novelty в диалоговом окне программы SQL Server Enterprise Manager.

РИС. 3.28. Структура базы данных Novelty компании Jones Novelties Incorporated в диалоговом окне программы SQL Server Enterprise Manager

Сценарий создания базы данных выполняется в программе SQL Query Analyzer. Чтобы сократить до минимума ошибки, этот сценарий удаляет все прежние объекты базы данных. Это значит, что при любом изменении структуры базы данных в режиме конструктора целостность базы данных может быть восстановлена с самого начала просто за счет повторного выполнения сценария. Этот подход гарантирует, что все изменения структуры базы данных учитываются каждый раз при ее повторном создании.

Недостатком этого подхода является то, что если разработчик будет недостаточно аккуратен, то сценарий удалит все таблицы в базе данных вместе с содержащимися в них данными. Поэтому все такие сценарии нужно удалить после переноса создаваемой системы на рабочее место. При этом, как обычно, большое значение имеет резервное копирование базы данных еще до внесения в нее каких-либо существенных изменений для восстановления в случае непредвиденных сбоев.

Для генерации сценариев создания базы данных для компании Jones Novelties Incorporated выполните перечисленные ниже действия.

1. Откройте программу SQL Server Enterprise Manager и щелкните правой кнопкой мыши на базе данных Novelty.

Перейти на страницу:

Похожие книги

Access 2002: Самоучитель
Access 2002: Самоучитель

В книге рассматривается широкий круг вопросов, связанных с использованием программной среды Access 2002, которая является составной частью пакета Office 2002 и предназначена для создания банка данных в самых различных предметных областях.Подробно описывается методика проектирования объектов базы данных (таблицы, формы, отчеты, страницы доступа к данным, запросы, модули).Детально обсуждаются вопросы создания интегрированной базы данных в единой среде Access 2002: формирование БД с нуля, конвертирование в программную среду баз данных, созданных в ином программном окружении – Clarion, FoxPro.Особое внимание уделяется формированию разнообразных запросов к интегрированной базе данных Access 2002 с использованием языков программирования SQL, VBA и макросов.Приводятся общие сведения о возможностях языка обмена данными между различными компьютерами и приложениями (XML). Описываются возможности использования гиперссылок, связывающих базу данных с другими программными продуктами. Объясняется, как можно работать с базой данных Access 2002 без установки ее на компьютер, используя технологию ODBC (Open Data Base Connectivity). В приложениях приводятся количественные параметры Access 2002 и связанная с этой СУБД терминология.Предлагаемая книга будет полезна специалистам, занимающимся практической разработкой банков данных и приложений на их основе, а также студентам вузов, изучающим информатику.

Павел Юрьевич Дубнов

Программирование, программы, базы данных / ОС и Сети / Книги по IT