В поставке Delphi есть две утилиты для доступа к базам данных и администрации сервера InterBase. Утилита Windows ISQL позволяет интерактивно выполнять SQLзапросы к базе данных и получать результат. Это требуется в двух случаях: для отладки SQLвыражения и для управления данными и их структурой. Кроме того, создать базу данных, хранимые процедуры, триггеры, и т.п. также удобнее с помощью ISQL. ISQL позволяет обращаться как к данным на удаленном сервере, так и к локальным (к Local InterBase).
Рассмотрим порядок работы с этой программой. Прежде, чем начать работу, нужно либо установить соединение с имеющейся базой данных, либо создать новую базу.
Установка соединения
После запуска ISQL выберите пункт меню “File|Connect to Database…”, появится диалог (см. Рис. 29.1), в котором нужно выбратьсервер (удаленный или локальный, в данном случае мы обращаемся к Local InterBase), файл базы данных, указать имя пользователя (SYSDBA - имя системного администратора) и пароль (masterkey - пароль по умолчанию). Если все указано правильно, то по нажатию клавиши “OK” установится соединение с базой данных и можно приступать к дальнейшей работе.
Рис. 33.1 Диалог соединения с базой данных.
Рис. 33.2 Диалог создания новой базы данных
Создание новой базы данных
Эту операцию можно выполнить в пункте меню “File|Create Database” (см. Рис. 29.2). В диалоге нужно указать имя файла (например, c:\bases\new_base.gdb), имя и пароль системного администратора (SYSDBA и masterkey), и, при необходимости, дополнительные параметры. В данном случае создается база данных, поддерживающая русскую кодовую страницу WIN1251. Если Вы собираетесь работать из ISQL с базой данных в русской кодировке, то перед установкой соединения нужно в пункте меню “Session|Advanced Settings” установить “Character set on connect” в WIN1251.
Получение информации о структуре базы данных
В ISQL можно получить полную информацию о структуре базы данных: список таблиц и их структуры, списки и текст триггеров, хранимых процедур и т.п. Эту операцию можно выполнить в пункте меню View или Extract. Например, для базы данных из поставки Delphi (лежит в \IBLOCAL\EXAMPLES\EMPLOYEE.GDB), попробуем выбрать“Extract|SQLMetadata for Table” для таблицы COUNTRY. В окошке ISQL Output появится текст SQLзапроса, который создавал данную таблицу:
/* Extract Table COUNTRY */
/* Domain definitions */
CREATE DOMAIN COUNTRYNAME AS VARCHAR(15);
/* Table: COUNTRY, Owner: SYSDBA */
CREATE TABLE COUNTRY (COUNTRY COUNTRYNAME NOT NULL,
CURRENCY VARCHAR(10) NOT NULL,
PRIMARY KEY (COUNTRY));
Рис. 33.3 Окно ISQL с текстом и результатом выполнения SQLзапроса.
Выполнение SQLзапросов
Текст SQLзапроса вводится в окошке “SQLStatement”. Для запуска его на выполнение, нажмите кнопку “Run”. На
Рис. 29.3 приведен результат работы примерного запроса.