Читаем Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ полностью

WHERE employee.dept_no = department.dept_no

<p>Команды SET</p>

Команды 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- включает отображение статистики выполнения. Это значение по умолчанию.

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

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

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript
Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Данная книга посвящена программированию игр с помощью ActionScript. Здесь вы найдете подробные указания, необходимые для создания самых разных игр – аркад, головоломок, загадок и даже игровых автоматов. В тексте приведены исходные коды программ и детальные, доступно изложенные инструкции. Базовые принципы программирования ActionScript рассматриваются на примере игр, однако вы без труда сможете применить полученные знания и для разработки неигровых проектов, таких как Web-дизайн и реклама. Рекомендации Гэри Розенцвейга помогут вам не только придумывать занимательные игры и размещать их на Web-сайте, но и оптимизировать скорость их работы, а также защищать свои творения от несанкционированного копирования. Представленный в книге код несложно изменить для использования в других программах.Книга предназначена для широкого круга читателей – создателей анимационных роликов, художников-оформителей, программистов и разработчиков Web-сайтов. Издание может также выступать в качестве практического пособия по изучению ActionScript.

Гэри Розенцвейг

Программирование, программы, базы данных / Программирование / Книги по IT
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ

Эта книга представляет собой перевод третьего издания американского бестселлера Effective C++ и является руководством по грамотному использованию языка C++. Она поможет сделать ваши программы более понятными, простыми в сопровождении и эффективными. Помимо материала, описывающего общую стратегию проектирования, книга включает в себя главы по программированию с применением шаблонов и по управлению ресурсами, а также множество советов, которые позволят усовершенствовать ваши программы и сделать работу более интересной и творческой. Книга также включает новый материал по принципам обработки исключений, паттернам проектирования и библиотечным средствам.Издание ориентировано на программистов, знакомых с основами C++ и имеющих навыки его практического применения.

Скотт Майерс , Скотт Мейерс

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