Читать интересную книгу Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - Хелен Борри

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 170 171 172 173 174 175 176 177 178 ... 238

SQL> SHOW {TRIGGERS | TRIGGER имя } ;

SHOW TRIGGERS - отображает список имен всех таблиц вместе с именами их триггеров в алфавитном порядке.

SHOW TRIGGER имя- для заданного триггера указывает таблицу, к которой он принадлежит, отображает параметры заголовка, статус активности и исходный код PSQL тела триггера.

Примеры:

SQL> SHOW TRIGGERS ;

Table name Trigger name

========== ==========

EMPLOYEE SET_EMP_NO

EMPLOYEE SAVE_SALARY_CHANGE

CUSTOMER SET_CUST_NO

SALES PQST_NEW_ORDER

SQL> SHOW TRIG SET_CUST_NO ;

Trigger:

SET_CUST_NO, Sequence: 0, Type: BEFORE INSERT, Active

AS

BEGIN

new.custno = gen_id (cust_no_gen, 1);

END

SHOW VERSION отображает информацию о программной версии isql и серверной программы Firebird, а также номер структуры на диске (ODS) подключенной базы данных. Сокращенный вариант команды SHOW VER.

SQL> SHOW VERSION ;

Команда не принимает аргументов.

Пример для сервера с именем dev с запушенным Firebird 1.5 под Windows 2000:

SQL> SHOW VER ; -

ISQL Version: WI-V1.5.0.4306 Firebird 1.5 Firebird/x86/Windows NT (access method), version "WI-V1.5.0.4306 Firebird 1.5" Firebird/x86/Windows NT (remote server), version "WI-V1.5.0.4306 Firebird 1.5/tcp (dev)/P10" Firebird/x86/Windows NT (remote interface), version "WI-V1.5.0.4306 Firebird 1.5/tcp (dev)/Р10" on disk structure version 10.1

SHOW VXEW[S] отображает все просмотры или информацию об указанном просмотре. (См. также SHOW TABLES.)

SQL> SHOW { VIEWS | VIEW имя } ;

SHOW VIEWS - отображает список имен всех просмотров в алфавитном порядке.

SHOW VIEW ИМЯ- отображает имена столбцов и оператор SELECT, на котором основан просмотр.

Пример:

SQL> SHOW VIEWS ;

PHONE_LIST CUSTOMER

. . .

SQL> SHOW VIEW PHONE_LIST;

EMP_NO (EMPNO) SMALLINT Not Null

FIRST_NAME (FIRSTNAME) VARCHAR(15) Not Null

LAST_NAME (LASTNAME) VARCHAR(20) Not Null

PHONE_EXT VARCHAR(4) Nullable

LOCATION VARCHAR(15) Nullable

PHONE_NO (PHONENUMBER) VARCHAR(20) Nullable

View Source:

=============

SELECT

emp_no, first_name, last_name, phone_ext, location, phone_no FROM employee, department

WHERE employee.dept_no = department.dept_no

Команды SET

Команды SET позволяют просматривать и изменять некоторые вещи, связанные со средой isql. Отдельные из них доступны в скриптах.

SET AUTODDL задает, будут ли операторы DLL подтверждаться автоматически после их выполнения или будут подтверждаться после явного выполнения COMMIT. Оператор доступен в скриптах.

SQL> SET AUTODDL [ON | OFF] ;

/* значение по умолчанию ON */

где ON - включает автоматическое подтверждение. OFF- отключает автоматическое подтверждение.

SET AUTO (без аргументов) просто переключает AUTODDL между включено и выключено.

Пример:

. . .

SQL> SET AUTODDL OFF ;

SQL> CREATE TABLE WIZZO (x integer, у integer) ; SQL> ROLLBACK; /* таблица WIZZO не создана */

. . .

SQL>SET AUTO ON ;

SQL> CREATE TABLE WIZZO (x integer, у integer) ; SQL> /* таблица WIZZO создана */

SET HLOBDISPLAY задает необходимость отображения подтипа BLOB и отображения данных BLOB. Сокращенной версией этой команды является SET BLOB.

SQL> SET BLOBDISPLAY [ n | ALL |OFF ];

n - отображать BLOB заданного подтипа. Значение по умолчанию n = 1 (текст). Положительные числа определены в системе; отрицательные числа определяются пользователем.

ALL - отображать данные BLOB любого подтипа.

OFF- отключает отображение данных BLOB. Вывод показывает только идентификатор BLOB (Blob ID- два шестнадцатеричных числа, разделенных двоеточием). Первое число является идентификатором таблицы, содержащей столбец BLOB. Второе является последовательным номером реализации и идентифицирует данные BLOB.

Пример:

. . .

SQL> SET BLOBDISPLAY OFF ;

SQL> SELECT PROJ_NAME, PROJ_DESC FROM PROJECT ;

SQL> /* строки показывают значения PROJ_NAME и Blob ID */

. . .

SQL>SET BLOB 1 ;

SQL> SELECT PROJ_NAME, PROJ_DESC FROM PROJECT ;

SQL> /* строки показывают значения PROJ_NAME и Blob_ID, */

SQL> /* а текст BLOB появляется ниже каждой строки */

SET COUNT включает/выключает отображение количества строк, найденных по запросам.

SQL> SET COUNT [ON | OFF] ;

ON- отображать сообщение "найденные строки" (rows returned).

OFF- не отображать сообщение "найденные строки" (rows returned). Значение по умолчанию.

Пример:

SQL> SET COUNT ON ;

SQL> SELECT * FROM WIZZO WHERE FAVEFOOD = 'Pizza' ; SQL> /* отображаются данные */

40 rows returned

SET ECHO включает/выключает отображение команд до их выполнения. Значение по умолчанию ON, но вы можете переключить его в OFF при направлении вашего вывода в файл скрипта.

SQL> SET ECHO [ON | OFF] ; /* значение по умолчанию ON */

ON - включает отображение команд. OFF- отключает отображение команд. Пример скрипта wizzo.sql:

SET ECHO OFF;

= 'Pizza' ; = 'Sardines' ;

SELECT * FROM WIZZO WHERE FAVEFOOD SET ECHO ON ;

SELECT * FROM WIZZO WHERE FAVEFOOD EXIT;

SQL > INPUT wizzo.sql ; WIZTYPE FAVEFOOD

alpha Pizza

epsilon Pizza

SELECT * FROM WIZZO WHERE FAVEFOOD = 'Sardines' ; WIZTYPE FAVEFOOD

gamma Sardines

lamda Sardines

SET NAMES задает набор символов, который будет активным в транзакциях базы данных. Это особенно важно, если в вашей базе данных набором символов по умолчанию является NONE. ЕСЛИ наборы символов клиента и базы данных не соответствуют друг другу, вы рискуете получить ошибки транслитерации и сохранить неверные данные при использовании isql для выполнения изменений, добавлений или поиска данных (включая отыскиваемые изменения и удаления).

Команда SET NAMES доступна в скриптах[147].

SQL> SET NAMES набор-символов ;

где набор-символов - имя активируемого набора символов. Значение по умолчанию

NONE.

Пример из скрипта:

SET NAMES WIN1251 ;

CONNECT 'HOTCHICKEN:/usr/firebird/examples/employee.gdb' ;

SET PLAN задает, нужно ли отображать план запроса оптимизатора.

SQL> SET PLAN [ON|OFF ];

ON - включает отображение плана запроса. Это значение по умолчанию. OFF - отключает отображение плана запроса.

Для сокращения вы можете опускать ON | OFF и просто использовать SET PLAN для переключения режима.

Пример из скрипта:

SET PLAN ON ;

SELECT JOB_COUNTRY, MIN_SALARY FROM JOB

WHERE MIN_SALARY > 50000 AND JOB_COONTRY = 'Sweden';

SQL> INPUT iscript.sql

PLAN (JOB INDEX (RDB$FOREIGN3,MINSALX,MAXSALX) JOB COUNTRY MIN SALARY

Sweden 120550.00

SET PLANONLY задает только подготовку запросов SELECT и отображение плана без выполнения самого запроса.

SQL> SET PLANONLY ON | OFF;

Команда работает как переключатель. Аргумент необязателен.

SET SQLDIALECT устанавливает SQL-диалект Firebird в то значение, которое было задано для сессии клиента. Если в сессии открыто соединение с базой данных с диалектом, отличным от того, который задан в команде, будет выдано предупреждение, и программа спросит вас, хотите ли вы подтвердить выполненную работу (если такая была).

SQL> SET SQL DIALECT N ;

где n - номер диалекта, n равен 1 для диалекта 1,2 - для диалекта 2 и 3 - для диалекта 3.

Пример:

SQL> SET SQL DIALECT 3 ;

SET STATS определяет, отображать ли статистику выполнения, которая будет следовать за выходными данными запроса.

SQL> SET STATS [ON|OFF];

ON - включает отображение статистики выполнения.

OFF- включает отображение статистики выполнения. Это значение по умолчанию.

Вы можете опускать ON | OFF и просто использовать SET STATS в качестве переключателя. На рис. 37.6 показан типичный статистический итог, отображаемый после выходных данных запроса.

Рис. 37.6. Пример SET STATS

SET STATISTICS

SET STATISTICS является командой SQL (не isql), которую вы можете использовать в isql - так же, как и в других программах - для вычисления селективности индек- са. Здесь об этом упоминается, потому что, неудивительно, люди часто путают ее с SET STATS. Чтобы узнать, почему селективность является важной для очень динамичных таблиц, см. разд. "Темы оптимизации" в конце главы 18.

Синтаксис этой команды SET STATISTICS имя-индекса. Оператор может быть выполнен только пользователем, который владеет индексом.

SET TERM задает символ, который будет использоваться в качестве терминатора команды или оператора. Он доступен в скриптах. См. замечания об этой команде ранее в данной главе.

SQL> SET TERM строка ;

где строка- символ или символы, которые будут использоваться как терминатор оператора. Значение по умолчанию ";".

Пример:

SET TERM ^^;

CREATE PROCEDURE ADD_WIZTYPE (WIZTYPE VARCHAR (16) , FAVEFOOD VARCHAR ( 20) ) AS

BEGIN

INSERT INTO WIZZO(WIZTYPE, FAVEFOOD) VALUES ( :WIZTYPE, :FAVEFOOD) ; END ^

SET TERM ;^

SET TIME задает, отображать ли время в значении DATE (только диалект 1).

SQL> SET TIME [ON|OFF ];

ON - включает отображение времени в значении DATE диалекта 1.

OFF- отключает отображение времени в значении DATE диалекта 1. Это значение по умолчанию.

Пример:

SQL> SELECT HIRE_DATE FROM EMPLOYEE WHERE EMP_NO = 145; HIRE_DATE

16-MAY-2004

SQL>SET TIME ON ;

SQL> SELECT HIRE_DATE FROM EMPLOYEE WHERE EMP_NO = 145; HIRE DATE

16-MAY-2004 18:20:00

SET WARNINGS задает, выводить ли предупреждающие сообщения. Можно использовать SET WNG как простой переключатель.

SQL> SET WARNINGS [ON |OFF ];

ON- включает отображение предупреждений, если они были отключены, или если сессия была запущена с переключателем -nowamings.

OFF- отключает отображение предупреждений, если они были включены.

Выход из интерактивной сессии isql

Для выхода из утилиты isql и отката (roll back) всей неподтвержденной работы введите:

SQL> QUIT;

Для выхода из утилиты isql и подтверждения всей работы введите:

SQL> EXIT;

Командный режим

Хотя isql имеет некоторые удобные интерактивные возможности, она не ограничена только этим режимом. Многие интерактивные команды доступны также в виде переключателей командной строки. Некоторые функции isql, такие как извлечение метаданных, доступны только из окна командной строки. Операции над входными и выходными файлами не обязательно должны быть интерактивными- фактически вызов isql с переключателями -i[nput] и -o[utput] не вызывает интерактивного режима.

1 ... 170 171 172 173 174 175 176 177 178 ... 238
На этом сайте Вы можете читать книги онлайн бесплатно русская версия Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - Хелен Борри.
Книги, аналогичгные Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - Хелен Борри

Оставить комментарий