Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Лекции - Базы данных (Delphi, SQL) - файл Лекция 10.doc


Лекции - Базы данных (Delphi, SQL)
скачать (7115.6 kb.)

Доступные файлы (21):

Лекция 10.doc766kb.31.03.2010 13:48скачать
Лекция 11.doc106kb.14.04.2010 14:07скачать
Лекция 12.doc397kb.28.04.2010 14:28скачать
Лекция 13.doc383kb.28.04.2010 14:28скачать
Лекция 14.doc523kb.12.05.2010 15:05скачать
Лекция 15.doc663kb.12.05.2010 15:04скачать
Лекция 16.doc1318kb.12.05.2010 13:20скачать
Лекция 2-123.doc163kb.03.02.2010 11:59скачать
Лекция 2-4.doc256kb.03.02.2010 11:47скачать
Приложение к лекции 2 - Проектирование баз данных.doc196kb.03.02.2010 01:19скачать
Лекция 3.doc316kb.03.02.2010 12:01скачать
ЛабЗан -1ср1 - ОПИСАНИЕ ДАННЫХ В ПРОГРАММЕ.doc253kb.12.01.2010 00:13скачать
ЛабЗан -1ср2- ЗАПИСЬ ВЫРАЖЕНИЙ И ОПЕРАТОРОВ.doc250kb.25.01.2009 23:44скачать
Лекция 3ср1 - ЯЗЫК ПРОГРАММИРОВАНИЯ OBJECT PASCAL.doc973kb.03.02.2010 13:42скачать
Лекция 3ср2 - ОПЕРАТОРЫ ЯЗЫКА OBJECT PASCAL.doc462kb.03.02.2010 13:42скачать
Лекция 4.doc216kb.03.02.2010 11:49скачать
Лекция 5.doc997kb.17.02.2010 14:43скачать
Лекция 6.doc1498kb.23.02.2010 16:20скачать
Лекция 7.doc1013kb.03.03.2010 17:10скачать
Лекция 8.doc376kb.09.03.2010 13:26скачать
Лекция 9.doc414kb.23.03.2010 13:55скачать

содержание
Загрузка...

Лекция 10.doc

Реклама MarketGid:
Загрузка...
Лекция 10

Инструментальные средства для работы

с удаленными базами данных
Введение

1. Программа IBConsole

1.1.Управление сервером

1.1.1. Подключение к серверу

1.1.2. Регистрация сервера

1.1.3. Просмотр протокола работы сервера

1.1.4. Операции с сертификатами

1.1.5. Управление пользователями

1.2. Управление базой данных

1.2.1. Регистрация базы данных

1.2.2. Подключение базы данных

1.2.3. Создание базы данных

1.2.4. Просмотр метаданных

1.2.5. Сбор мусора

1.2.6. Проверка состояния базы данных

1.2.7. Анализ статистики

1.2.8. Сохранение и восстановление базы данных

1.3. Интерактивное выполнение SQL-запросов

2. Программа SQL Monitor


Введение

Ранее (см. лекцию 6) уже были рассмотрены инструментальные средства, используемые для работы с БД. Большинство этих программ можно также использовать и для ра­боты с удаленными БД. Так, создать псевдоним для InterBase позволяют про­граммы BDE Administrator и Database Desktop, а редактировать и просматривать записи можно с помощью программы SQL Explorer. В дополнение к названным в данной лекции мы познакомимся с программами, предназначенными специаль­но для удаленных БД.

^ 1. Программа IBConsole

Программа IBConsole предназначена для управления сервером InterBase и яв­ляется его консолью. Консоль устанавливается совместно с сервером InterBase и находится в его каталоге BIN, ее главный файл называется IBConsole.exe. Программу можно вызвать через главное меню Windows командой Programs\InterBase\IB Console.

По сравнению с предыдущими версиями сервера InterBase программа IBConsole объединяет функциональность программ InterBase Windows Interactive SQL (WISQL) и InterBase Server Manager. Теперь для сервера InterBase 6 программа InterBase Windows Interactive SQL не поставляется, а функциональность про­граммы InterBase Server Manager значительно уменьшилась, и теперь она служит только для запуска и остановки сервера.

Программа IBConsole обеспечивает:

  • управление локальными и удаленными серверами;

  • управление БД;

  • интерактивное выполнение SQL-запросов.

Основную часть окна IBConsole занимают две панели (рис. 10.1). В левой пане­ли в виде дерева представляются зарегистрированные серверы и их БД, а также элементы структуры, например, таблицы или пользователи. Отметим, что в ка­честве имени сервера или БД отображается его псевдоним (Alias), задаваемый при регистрации сервера или БД. Этот псевдоним никак не связан с псевдони­мом BDE. В правой панели выводится информация об объекте, выбранном в левой панели.



Рис. 10.1. Окно программы IBConsole



    1. Управление сервером

Управление сервером заключается в:

  • регистрации сервера;

  • подключении сервера;

  • просмотре протокола работы;

  • управлении сертификатами;

  • определении пользователей.


Для управления сервером используются команда меню Server главного окна программы IBConsole, а также команды контекстного меню сервера и его эле­ментов.

После запуска консоли в левой панели отображается список зарегистрирован­ных серверов, которые первоначально отключены, о чем свидетельствует крас­ный крестик в значке сервера.
^ 1.1.1. Подключение к серверу

Подключение к серверу, выбранному в левой панели, выполняется командой Login.... При этом появляется окно Server Login (рис. 10.2), в котором необхо­димо указать имя пользователя (User Name) и его пароль (Password). После указания имени SYSDBA системного администратора, его пароля masterkey и нажа­тия кнопки Login осуществляется подключение к серверу, имя (alias) которого отображается в надписи Server, а к значку сервера добавляется зеленая галочка.



Рис.10.2. Подключение к серверу Рис.10.3. Проверка подключения сервера к БД
Отключение от выбранного сервера выполняется командой Logout. При этом выдается запрос на продолжение операции и в случае подтверждения сервер отключается.

После подключения к серверу можно выполнить проверку подключения к одной из его БД. Командой Diagnose Connection... вызывается окно проверки соедине­ния Communication Diagnostics (рис. 10.3), в котором указываются данные о сер­вере. В качестве БД задается ее файл, который можно выбрать в окне Open, вы­зываемом нажатием кнопки с тремя точками.

Кнопка Test инициирует проверку, результаты которой выводятся в поле Results.

На страницах TCP/IP, NetBEUI, SPX можно выполнить настройку соответст­вующего сетевого протокола.
^ 1.1.2. Регистрация сервера

Для регистрации в консоли нового сервера необходимо выполнить команду Register..., после чего открывается окно регистрации и соединения с сервером Register Server and Connect (рис. 10.4).

При регистрации локального сервера устанавливается переключатель ^ Local Server. При необходимости в поле описания (Description) можно ввести краткую информацию, поясняющую назначение и особенности сервера. После нажатия кнопки ОК локальный сервер регистрируется, а его имя добавляется к списку в левой панели.

В случае регистрации удаленного сервера устанавливается переключатель ^ Remote Server и заполняются поля, которые за­блокированы при подключении локаль­ного сервера: в поле Server Name указыва­ется сетевое имя сервера, в списке Network Protocol выбирается протокол связи, а в поле Alias Name задается имя (псевдоним), под которым сервер регистрируется в кон­соли.



Рис. 10.4. Регистрация сервера

Одновременно с регистрацией можно выполнить подключение сервера, для чего должны быть заполнены поля группы Login Information: User Name и Password.

^ Отмена регистрации выбранного сервера выполняется командой Server/Un-Register. При этом выдается запрос на продолжение операции, и в случае под­тверждения сервер исключается из консоли. Перед отменой регистрации серве­ра его необходимо отключить.
^ 1.1.3. Просмотр протокола работы сервера

В процессе работы сервера ведется протокол (log file), просмотреть который можно, вызвав команду View Logfile.... При этом появляется окно протокола Server Log (рис. 10.5), в котором выводится краткий отчет о работе сервера.

Протокол можно распечатать или сохранить в текстовом файле.


Рис. 10.5. Просмотр протокола работы сервера

^ 1.1.4. Операции с сертификатами

Список сертификатов (certificate — удостоверение), действительных для сервера, можно просмотреть в правой панели, выбрав в левой панели элемент Certificates. Сертификат можно добавить, вызвав командой Add Certificate... одноименное окно Add Certificate (рис. 10.6) и указав в нем код (ID) и ключ (Key) сертифика­та. После нажатия кнопки ОК выполняется проверка сертификата, и, если ошибки не найдены, новый сертификат добавляется к серверу.

Выбранный в списке сертификат удаляется командой Remove Certificate.... Пе­ред удалением выдается запрос на подтверждение операции.


Рис.10.6. Добавление сертификата к серверу Рис.10.7. Атрибуты пользователя
^ 1.1.5. Управление пользователями

Для каждого сервера существует список пользователей, имеющих право доступа к нему. Список таких пользователей можно просмотреть в правой панели, вы­брав в левой панели элемент Users. Консоль позволяет добавить или удалить пользователя, а также просмотреть и изменить его атрибуты. Эти действия (кроме удаления) выполняются в окне User Information (рис. 10.7), вызываемом командой User Security... или командами контекстного меню списка пользователей.

Для пользователя необходимо ввести обязательные атрибуты (Required Infor­mation), которыми являются его системное имя (User Name), пароль (Password) и повтор пароля (Confirm Password). Имя пользователя также можно выбрать из раскрывающегося списка. Остальные атрибуты являются дополнительными (Optional Information) и не требуют обязательного ввода: имя (First Name), отче­ство (Middle Name) и фамилия (Last Name).
^ 1.2. Управление базой данных

Список баз данных, зарегистрированных для сервера, отображается в левой па­нели. Так, на рис. 10.1 для локального сервера (Local Server) такими БД являются Registration и Human Resources. Зарегистрированная БД может быть подклю­чена или отключена от сервера, что отмечается, соответственно, зеленой галоч­кой и красным крестом в значке БД.

Управление БД заключается в:

  • регистрации БД;

  • подключении БД;

  • создании и удалении БД;

  • просмотре метаданных;

  • проверке состояния БД;

  • анализе статистики;

  • сохранении и восстановлении БД.


Для управления БД используются команды меню Database главного окна про­граммы IBConsole, а также команды контекстного меню баз данных и их эле­ментов.
^ 1.2.1. Регистрация базы данных

Регистрация БД начинается командой Register..., которая вызывает окно Register Database and Connect (рис. 10.8). В этом окне необходимо указать (выбрать) главный файл БД (File), а также псевдоним (имя) БД (Alias), под которым она будет зарегистрирована на сервере, обозначенном надписью Server. По умолчанию в качестве псевдонима БД предлагается имя ее главного файла с расширением.



Рис. 10.8. Регистрация БД на сервере
Остальные данные не является обязательными. Однако если задать имя и пароль пользователя, то после регистрации выполняется подключение указанной БД.

Исключение БД из списка регистрации сервера выполняется командой Unregister, при этом БД предварительно должна быть отключена от сервера. При выполнении операции запрашивается подтверждение.

^ 1.2.2. Подключение базы данных

Подключение БД к серверу и отключение от него выполняется командами Connect и Disconnect, соответственно. Команда Con­nect As... позволяет подключиться к БД с новыми параметрами, указываемыми в окне Database Connect (рис. 10.9).



Рис. 10.9. Подключение БД к серверу

^ 1.2.3. Создание базы данных

Консоль позволяет достаточно удобно и быстро создавать БД, в том числе и многофайловые. Создание БД, а также ее удаление, для которых используются команды Create Database... и Drop Database, уже были рассмотрены в предыду­щей главе.
^ 1.2.4. Просмотр метаданных

Метаданные представляют собой элементы структуры БД. Для выбранной БД их можно просмотреть, вызвав команду View Metadata..., что приводит к открытию окна Database Metadata. На рис. 10.10 показаны метаданные БД emloyee.gdb, которая поставляется вместе с сервером InterBase в качестве примера.

Метаданные представляют собой сценарий (скрипт), написанный на языке SQL, который можно распечатать или сохранить в текстовом файле. Сохраненный скрипт впоследствии можно выполнить, создав БД со всей ее структурой и дан­ными.


Рис. 10.10. Просмотр метаданных

^ 1.2.5. Сбор мусора

В процессе интенсивной многопользовательской работы в БД накапливается так называемый "мусор", под которым понимают старые версии записей, которые могут образовываться при одновременном доступе к записям нескольких тран­закций. Наличие мусора увеличивает размер и фрагментацию БД, поэтому БД надо периодически чистить — "удалять мусор" (удаление мусора также называют сбором мусора).

Удаление мусора можно выполнять в ручном или автоматическом режимах. В ручном режиме удаление мусора начинается командой Maintenance/Sweep (Обслуживание/Чистка). Во втором режиме удаление мусора начинается автома­тически, когда общее число примененных к БД транзакций достигает предель­ного значения. По умолчанию это значение установлено равным 20 000, его можно изменить в поле Sweep Interval (Интервал чистки) окна свойств БД (Database Properties).

Если в момент чистки БД присутствуют активные пользователи, то это снижают эффективность удаления мусора, т. к. используемые транзакциями записи не могут быть обработаны "уборщиком". Поэтому удаление мусора следует прово­дить в периоды наименьшей загрузки БД, например, в ночные часы или в ре­жиме монопольного доступа к ней системного администратора.

Мусор удаляется также при резервном копировании и последующем восстанов­лении БД.

^ 1.2.6. Проверка состояния базы данных

БД должна находиться в целостном и непротиворечивом состоянии, т. е. содер­жать правильные данные. Проверка состояния БД начинается командой Maintenance/Validation..., в результате чего на экран выводится окно проверки БД Database Validation (рис. 10.11).



Рис. 10.11. Проверка состояния БД
В надписи Database отображается имя проверямой БД, а группа Options позво­ляет задать параметры поверки:

  • Validate Record Fragments — проверка структуры БД и структуры страниц;

  • Read Only Validation — в процессе проверки допускается только читать, но

не изменять записи;

  • Ignore Checksum Errors — ошибки контрольных сумм игнорируются.

По умолчанию все параметры имеют значение False, т. е. выключены. После нажатия кнопки ОК выполняется проверка, о результатах которой в окне Validation Report выдается соответствующий отчет.
^ 1.2.7. Анализ статистики

В процессе управления БД собирается определенная информация, характери­зующая ее работу и функционирование. Эта информация называется статисти­кой, несмотря на то, что часть ее является управляющей информацией, опреде­ляемой в том числе и при создании БД (например, размер страницы или дата создания БД). К собственно статистике относятся такие сведения, как частота обновления заголовка БД и гистограмма заполнения страниц.

Вывод статистики осуществляется командой Maintenance /Database Statistics..., в результате чего на экран выводится окно Database Statistics (рис. 10.12).



Рис. 10.12. Статистика БД
Выводимые в окне сведения о БД сгруппированы по секциям:

  • Database — имя БД;

  • Database Flags — флаги;

  • Checksum — контрольная сумма;

  • Generation — счетчик числа операций обновления заголовка;

  • Page size — размер страницы;

  • ODS version — версия формата файла БД;

  • Oldest transaction — номер самой старой незавершенной (активной, отмененной или сбойной) транзакции;

  • Oldest active — номер самой старой активной транзакции;

  • Next transaction — номер, который будет назначен следующей транзакции;

  • Sequence number — номер первой страницы;

  • Next attachment ID — номер, который будет назначен следующему соединению;

  • Implementation ID — идентификатор операционной системы, в которой создана БД;

  • Shadow count — число теневых файлов, определенных для БД;

  • Page buffers — номер страницы в кэше БД;

  • Next header page — номер, который будет назначен следующей странице заголовка;

  • Creation date — дата создания БД;

  • Attributes — атрибуты БД;

  • Database file sequence — список файлов БД:

  • File — имя файла;

  • Database log page information — страница журнала БД.


^ 1.2.8. Сохранение и восстановление базы данных

Сохранение БД заключается в создании резервной копии БД, которую впослед­ствии можно использовать для восстановления данных при возникновении сбоя. Предварительно БД необходимо отключить.

Для создания резервной копии БД необходимо выполнить команду Mainte­nance/Backup-Restore/Backup..., в результате чего откроется окно создания ре­зервной копии Database Backup (рис. 10.13).

Из списка ^ Alias группы Database выбирается имя сохраняемой БД, а элементы группы Backup File(s) определяют файл результата — сохраненной копии БД. В комбинированных списках Server и Alias выбирается или вводится соответст­венно имя сервера и БД для сохраняемой БД, а в поле Filename(s) вводится полное имя файла копии БД. В приведенном на рис. 105.13 варианте в имени копии указано слово Сору, а расширение GDB оставлено без изменений. В примерах, поставляемых совместно с сервером InterBase, имена копий совпа­дают с именами исходных файлов, а расширения изменены на GBK.

Группа Options позволяет задать следующие параметры:

  • Format — формат копии, которая по умолчанию создается в транспорта­бельном формате, не зависящем от операционной системы: сделанную в этом формате копию можно перенести (восстановить) на компьютер, рабо­тающий в любой из операционных систем, где установлен сервер InterBase;



Рис. 10.13. Создание резервной копии БД


  • Metadata Only — копируются только метаданные БД, т. е. ее структура; и результате будет скопирована (создана) пустая БД; по умолчанию параметр имеет значение False, поэтому создается полная копия БД;

  • Garbage Collection — при копировании производится сбор мусора (но умол­чанию);

  • ^ Transaction in Limbo (Транзакция в "забвении") — учитываются сбойные транзакции, которые могут возникнуть при расположении БД на нескольких серверах (значение Process по умолчанию); значение ignore предписывает не учитывать сбойные транзакции;

  • Checksums — учитываются ошибки, связанные с несовпадением контроль­ных сумм (значение Process по умолчанию); при значении ignore ошибки контрольных сумм игнорируются;

  • Convert to Tables — преобразование в таблицы, по умолчанию False;

  • ^ Verbose Output (Расширенный вывод) — указывает устройство, на которое в процессе копирования выдается дополнительная информация о ходе процес­са, по умолчанию экран — значение то Screen; кроме экрана можно указать файл (то File) или отменить выдачу сообщений (попе).

После завершения процесса выдается отчет о результатах, который в случае успешного создания копии выводится в окне ^ Database Backup и имеет следую­щий вид:

gbak: readied database D:\ibData\REGISTRATION.GDB for backup

gbak: creating file d:\save\CopyRegistration.gdb

gbak: starting transaction

gbak: database D:\ibData\REGISTRATION.GDB has a page size of 4096 bytes.

gbak: writing domains

gbak: writing shadow files

gbak: writing tables gbak:

writing functions

. . .

gbak: writing privilege for user SYSDBA

gbak: writing privilege for user PUBLIC

gbak: writing table constraints

gbak: writing referential constraints

gbak: writing check constraints

gbak: writing SQL roles

gbak: closing file, committing, and finishing. 512 bytes written

При наличии ошибок копия не создается, а отчет содержит сообщения об ошибках.

Замечание

Если резервное копирование выполняет не системный администратор, а поль­зователь, то ошибки могут быть связаны с отсутствием у него прав доступа к информации БД.

Резервная копия представляет собой архивный файл, размер которого в не­сколько раз меньше, чем размер исходного файла (файлов) БД.

Процесс восстановления БД из резервной копии БД инициируется командой Maintenance/Backup-Restore/restore..., в результате чего открывается окно Database Restore (рис. 10.14).



Рис. 10.14. Восстановление БД
Из списка Alias группы Backup File(s) выбирается имя сохраненной БД, после чего имя ее файла копии автоматически выводится в поле Filename(s). Если имя БД отсутствует в списке, то можно задать ее файл, выбрав в списке элемент File... и указав его имя в открывшемся окне Open. Элементы группы Database определяют сервер (Server), имя БД (Alias) и главный файл БД (Filename(s)).

Группа Options управляет параметрами восстановления и содержит переключа­тели:

  • ^ Page Size (Bytes) — размер в байтах страницы восстанавливаемой БД (по умолчанию 1024);

  • Overwrite (Перезаписать) — если расположение и имя восстанавливаемой копии совпадают с расположением и именем существующей БД, то послед­няя будет заменена копией; по умолчанию имеет значение False, т. е. со­храняется существующая БД;

  • Commit After Each Table — при восстановлении каждой таблицы выдается запрос на подтверждение этой операции; по умолчанию имеет значение False, и запрос не выдается;

  • Create Shadow Files — создание теневых файлов; по умолчанию False, т. е.
    восстановление выполняется без создания теневой (зеркальной) копии БД;

  • Deactivate Indices — восстановление выполняется с отключенными индекса­
    ми; по умолчанию имеет значение False, и индексы активны;

  • Validity Conditions — при значении Restore (по умолчанию) выполняется
    восстановление ограничений ссылочной целостности, при значении ignore
    ограничения не восстанавливаются;

  • Use All Space — использовать все имеющееся пространство, по умолчанию False;

  • ^ Verbose Output (Расширенный вывод) — указывает устройство, на которое в процессе копирования выдается дополнительная информация о ходе процес­са, по умолчанию экран — значение То Screen; кроме экрана, можно указать файл (то File) или отменить выдачу сообщений (None).


После завершения процесса отчет о результатах, который в случае успешного восстановления БД выводится в окне ^ Database Restore и имеет следующий вид:

gbak: opened file d:\save\CopyRegistration.gdb

gbak: transportable backup -- data in XDR format

gbak: backup file is compressed

gbak: Reducing the database page size from 4096 bytes to 1024 bytes

gbak: created database D:\ibData\REGISTRATION.GDB, page_size 1024 bytes

gbak: started transaction

gbak: restoring privilege for user SYSDBA

gbak: restoring privilege for user SYSDBA

gbak: restoring privilege for user SYSDBA

gbak: restoring privilege for user SYSDBA

gbak: restoring privilege for user SYSDBA

gbak: restoring privilege for user PUBLIC

gbak: creating indexes

gbak: finishing, closing, and going home;
^ 1.3. Интерактивное выполнение SQL-запросов

Консоль IBConsole позволяет в интерактивном режиме выполнять команды, заданные на языке SQL. Выполнение SQL-запросов и получение их результатов выполняются в окне Interactive SQL... (рис. 10.15), вызываемом командой Tools/Interactive SQL.... Это окно реализует функциональность, которая в пре­дыдущих версиях сервера InterBase принадлежала программе Windows Interactive SQL (WISQL), и мало чем отличается от нее. В заголовке окна отображается имя файла БД, а в строке состояния — его полное имя. Одновременно можно открыть несколько окон Interactive SQL для различных БД.



Рис. 10.15. Окно интерактивного выполнения SQL-запросов
В окне ^ Interactive SQL можно выполнять различные операции с БД, включая создание и удаление БД и ее таблиц, соединение с БД, просмотр и изменение данных. Выполнение операций с БД основано на выполнении соответствующих операторов языка SQL (SQL-запросов). Эти операторы формируются и выпол­няются автоматически при выборе определенных команд меню. Так, при созда­нии БД на основании указанных параметров формируется оператор create DATABASE.

Кроме того, можно набирать и выполнять операторы в ручном режиме. Опера­торы вводятся в верхней части окна, а в нижней его части выдаются результаты их выполнения.

Операторы можно набирать и выполнять поочередно. Перемещение между от­дельными операторами осуществляется нажатием кнопок с изображением жел­тых стрелок. Кнопка со стрелкой влево выводит в окне предыдущий, а со стрелкой вправо — последующий оператор. Выполнение оператора осуществля­ется при нажатии кнопки с изображением желтой молнии.

Результаты работы оператора можно запомнить в обычном текстовом файле, выбрав команду сохранения результата^ Query/Save Output.

Последовательность ействий, заданных после запуска окна Interactive SQL, можно сохранить в виде "истории". Для этого служит команда File/Save SQL History - "История" запоминается в виде текстового файла с расширением HST или ТХТ.

Последовательность операторов SQL представляет собой сценарий, или скрипт, его удобно использовать для автоматизации операций с БД. Сохранение сцена­рия выполняется командой Query/Save Script. Скрипт запоминается в виде тек­стового файла с расширением SQL или ТХТ.

Сохраненный сценарий впоследствии можно загрузить, для чего надо вызвать команду ^ Query/Load Script и указать имя сценария.

При выполнении операций, связанных с изменением БД, автоматически ис­пользуется механизм транзакций, т. е. одновременно с началом изменяющей БД операции запускается транзакция. Такой режим запуска транзакций, как мы уже знаем, называется неявным. Для закрепления выполненных изменений нужно выполнить оператор commit, а для отказа от них — rollback (это же можно сде­лать через вызов команд Transactions/Commit и Transactions/Rollback).

Параметры выполнения SQL-запросов уста­навливаются в окне SQL Options, которое вызывается командой Edit/Options (рис. 10.16).



Рис. 10.16. Установка параметров выполнения SQL-запросов
На странице Options можно задать следующие параметры:

  • Show Query Plan — показывать план выполнения запроса;

  • Auto Commit DDL (Автоматическое подтверждение операций DDL) — операторы определения данных, например создания таблиц, автоматически подтверждаются, т. е. связанная с операторами неявная транзакция не требует дополнительного подтверждения;

  • ^ Character Set — набор символов, используемый для кодировки строк (для
    нашей страны рекомендуется задавать набор WIN1251);

  • BLOB Display — режим отображения BLOB-объектов, может принимать зна­чения Restrict, Enabled И Disabled;

  • BLOB Subtype — тип данных, содержащихся в объекте BLOB (по умолчанию
    Text);

  • Terminator — разделитель, используемый в качестве знака окончания SQL-
    запроса (по умолчанию ;);

  • Client Dialect — определяет диалект (версию) языка SQL.


Переключатель Clear input window on success управляет режимом очистки верх­ней половины экна с текстом SQL-запроса в случае его успешного выполнения. По умолчанию переключатель включен, и окно очищается.

Замечание

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

Дополнительные параметры устанавливаются на странице Advanced (рис. 10.17).



Рис. 10.17. Установка дополнительных параметров выполнения SQL-запроса
Наибольший интерес представляет группа переключателей Transactions, которые определяют режим подтверждения незавер­шенной транзакции при прекращении работы с БД: подтверждать незавершенную транзак­цию (Commit on exit) или отменять ее (Roll­back on exit).

Управление БД в окне Interactive SQL фактически происходит в ручном режиме и заключается в вводе и выполнении операторов SQL. Единственным средством автоматизации, например, при создании таблиц или триггеров, является исполь­зование сценариев, хотя и в этом случае сценарии должны быть предварительно подготовлены. По удобству работы окно Interactive SQL уступает даже относи­тельно простым программам типа Database Desktop. Несмотря на это, управле­ние БД рассмотрено нами именно с использованием интерактивного SQL. Это сделано для того, чтобы показать особенности работы с удаленными БД, а также продемонстрировать язык SQL для удаленного сервера.

Кроме консоли IBConsole и подобных ей программ, имеются так называемые средства CASE, с помощью которых разработчик может управлять БД в ин­терактивном режиме.
^ 2. Программа SQL Monitor

Программа SQL Monitor представляет собой инструмент, позволяющий отсле­живать выполнение SQL-запросов к удаленным БД. Для запуска программы нужно выбрать команду Database/SQL Monitor или запустить файл sqlmon.exe, находящийся в каталоге BIN главного каталога Delphi. Программу также можно вызвать через главное меню Windows — командой Programs/Borland Delphi 6/ SQL Monitor.

Программа SQL Monitor отслеживает операции доступа к удаленным БД с по-мошыо драйверов SQL Links. Поэтому для локальных БД применять эту про­грамму бесполезно, даже если используются средства языка SQL. Это связано с тем, что для локальных БД применяются локальные драйверы.

Замечание

Если в приложении использованы компоненты страницы InterBase Палитры компонентов, например, набор данных iBQuery, то доступ к БД выполняется напрямую через BDE без использования драйвера SQL-Links. В этом случае контроль выполнения SQL-запросов к БД InterBase с помощью программы SQL Monitor невозможен.
После запуска Монитор автоматически отслеживает порядок выполнения SQL-запросов (выполняет трассировку операторов), ведя журнал работы с удаленной БД. Монитор отслеживает запросы для указанного в команде Clients клиента, при отладке Delphi-приложения таким клиентом является Delphi 7. Строки журнала выводятся в верхней части окна программы (рис. 10.18). В нижней час­ти окна отображается строка.



Рис. 10.18. Окно программы SQL Monitor
Для сохранения журнала в текстовом файле нужно выполнить команду File/Save Log... и указать имя файла, для очистки журнала — команду Edit/Clear, для ко­пирования его содержимого в буфер — команду Edit/Copy.

Параметры Монитора устанавливаются в окне параметров трассировки Trace Options (рис. 10.19), вызываемом командой Options/ Trace Options....



Рис. 10.19. Окно установки параметров трассировки
С помощью параметров Монитора можно регулировать степень детальности информа­ции, заносимой в журнал. Монитор имеет следующие параметры:

  • Prepared Query Statements — подготовлен­ные запросы, передаваемые на сервер;

  • Executed Query Statements — выполненные на сервере запросы;

  • Input Parameters — входные параметры — данные, передаваемые на сервер в качестве параметров запросов;

  • Fetched Data — данные, возвращаемые сервером;

  • Statement Operations — операции с запросами (allocate, prepare, execute и fetch);

  • Connect/Disconnect — операции соединения с сервером и отключения от него;

  • Transactions — операции управления транзакциями;

  • Blob I/O — ввод-вывод данных типа blob;

  • Miscellaneous — остальные операции;

  • Vendor Errors — сообщения об ошибках, возвращаемые сервером;

  • Vendor Calls — вызовы API-функций сервера.

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

SELECT * FROM ti

в журнал будет занесено 26 строк, что не облегчает, а скорее затрудняет провер­ку выполнения запроса. Поэтому в данном случае можно ограничиться только следующими параметрами:

  • Prepared Query Statements

  • Executed Query Statements

  • Transactions


Тогда после выполнения приведенного запроса в журнал будут занесены такие данные:

  1. 01:10:47 SQL Prepare: INTRBASE - SELECT I FROM ti

  2. 01:10:47 SQL Transact: INTRBASE - XACT (UNKNOWN)

  3. 01:10:47 SQL Execute: INTRBASE - SELECT I FROM ti

  4. 01:10:47 SQL Transact: INTRBASE - XACT Commit


Монитор можно разместить поверх всех окон, вызвав команду Options/Always on Top.






Скачать файл (7115.6 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации