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

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 209 210 211 212 213 214 215 216 217 ... 238

Для будущих реализаций

RDB$TRANSACTION_ DESCRIPTION

BLOB TEXT

Подтип BLOB transaction description. Описывает подготовленную транзакцию к нескольким базам данных. Доступна в случае потери соединения, которое не может быть восстановлено

BDB$TRIGGER_MESSAGES хранит определения сообщений триггеров (системное использование).

Идентификатор столбца

Тип

IDX

UN

Описание

RDB$TRIGGER NAME

CHAR(31)

Y

Имя триггера, с которым ассоциировано сообщение

RDB$MESSAGE_NUMBER

SMALLINT

Номер сообщения (от 1 до максимум 32 767)

RDB$MESSAGE

VARCHAR(78)

Текст сообщения триггера

RDB$TRIGGERS хранит описания всех триггеров.

Идентификатор столбца

Тип

IDX

UN

Описание

RDB$TRIGGER_NAME ¦

CHAR(31)

Y

Y

Имя триггера

RDB$RE LATI ON_N AME

CHAR(31)

Y

Имя таблицы или просмотра, для которого используется триггер

RDB$TRIGGER_SEQUENCE

SMALLINT

Последовательность (позиция) триггера. Ноль обычно означает, что последовательность не задана

RDB$TRIGGER_TYPE

SMALLINT

= BEFORE INSERT,

2 = AFTER INSERT,

3 = BEFORE UPDATE,

4 = AFTER UPDATE,

5 = BEFORE DELETE,

6 = AFTER DELETE.

Триггеры на многие события (Firebird 1.5 и выше) имеют различные типы, которые используют большие номера. Фактический тип кода зависит от того, какие обрабатываются события и от порядка, в котором представляются события. (Заметим, что не существует видимых причин для того, чтобы порядок событий влиял на код trigger type)

RDB$TRIGGER_SOURCE

BLOB TEXT

Хранит PSQL исходный код триггера

RDB$TRIGGER_BLR

BLOB BLR

Хранит представление триггера в двоичном коде

RDB$DESCRIPTION

BLOB TEXT

Дополнительная документация

RDB$TRIGGER INACTIVE

SMALLINT

Является ли триггер в настоящее время неактивным (1 = неактивный, 0 = активный)

RDB$SYSTEM FLAG

SMALLINT

Определен пользователем (0) либо системой (1 или выше)

RDB$FLAGS

SMALLINT

Внутреннее использование

RDB $ TYPES хранит описания перечисляемых типов, используемых в Firebird.

Идентификатор столбца

Тип

IDX

UN

Описание

RDB$FIELD NAME

CHAR (31)

Имя столбца, для которого определен этот перечисляемый тип. Заметьте, что то же имя столбца появляется во множестве системных таблиц

RDB$TYPE

SMALLINT

Перечислимый идентификатор для типа, который идентифицирует RDB$FIELD NAME. Последовательность чисел является уникальной для каждого отдельного перечисляемого типа (например, 0 = таблица, 1 = просмотр, 2 = триггер, 3 = вычисляемый столбец, 4 = проверка, 5 = процедура - все являются типами из RDB$OBJECT TYPE)

RDB$TYPE_NAME

CHAR(31)

Y

Текстовое представление типа, идентифицированного значением RDB$FIELD_NAME и значением RDB$TYPE

RDB$DESCRIPTION

BLOB TEXT

Может использоваться для документирования

RDB$SYSTEM_FLAG

SMALLINT

Определен пользователем (0) или системой (1 или выше)

RDB$USER_PRIVILEGES хранит полномочия SQL.

Идентификатор столбца

Тип

IDX

UN

Описание

RDB$USER

CHAR(31)

Y

Пользователь, которому предоставляется полномочие

RDB$GRANTOR

CHAR(31)

Имя пользователя, предоставляющего полномочие

RDB$PRIVILEGE

CHAR(6)

Привилегия, предоставляемая в полномочии

RDB$GRANT_OPT | ON

SMALLINT

Содержит ли полномочие авторизацию WITH GRANT OPTION. 1 = да, 0 = нет

RDB$RELATION NAME

CHAR(31)

Y

Объект, к которому предоставляется полномочие

RDB$FIELD_NAME

CHAR(31)

Имя столбца, к которому применяется привилегия на уровне столбца (только привилегии UPDATE и REFERENCES)

RDB$USER_TYPE

SMALLINT

Идентифицирует тип пользователя, которому предоставляется привилегия (например, пользователь, процедура, просмотр и т.д.)

RDB$OBJECT_TYPE

SMALLINT

Идентифицирует тип объекта, к которому предоставляется привилегия

RDB$VIEW_RELATIONS является устаревшей таблицей.

Системные просмотры

Следующие системные просмотры являются подмножеством просмотров, определенных в стандарте SQL-92. Они предоставляют полезную информацию о ваших данных. Вы можете скопировать эти тексты в скрипты и инсталлировать просмотры во всех ваших базах данных.

CHECK_CONSTRAINTS отображает все ограничения CHECK, определенные в базе данных, с исходными текстами определения ограничений.

CREATE VIEW CHECK_CONSTRAINTS (

CONSTRAINT_NAME,

CHECK_CLAUSE )

AS

SELECT RDB$CONSTRAINT_NAME,

RDB$TRIGGER_SOURCE

FROM RDB$CHECK_CONSTRAINTS RC, RDB$TRIGGERS RT

WHERE RT.RDB$TRIGGER_NAME = RC.RDB$TRIGGER_NAME;

CQNSTRAINTS_COLUMN_USAGE отображает столбцы, используемые в ограничениях PRIMARY KEY и UNIQUE и определенные в ограничениях FOREIGN KEY.

CREATE VIEW CONSTRAINTS_COLUMN_USAGE (

TABLE_NAME,

COLUMN_NAME, CONSTRAINT_NAME )

AS

SELECT RDB$RELATION_NAME, RDB$FIELD_NAME, RDB$CONSTRAINT_NAME

FROM RDB$RELATION_CONSTRAINTS RC, RDB$INDEX_SEGMENTS RI

WHERE RI.RDB$INDEX_NAME = RC.RDB$INDEX_NAME;

REFERENTIAL_CONSTRAINTS отображает все ссылочные ограничения, определенные в базе данных.

CREATE VIEW REFERENTIAL_CONSTRAINTS (

CONSTRAINT_NAME,

UNIQUE_CONSTRAINT_NAME,

MATCH_OPTION,

UPDATE_RULE,

DELETE_RULE )

AS

SELECT RDB$CONSTRAINT_NAME,

RDB$CONST_NAME_UQ, RDB$MATCH_OPTION,

RDB$UPDATE_RULE, RDB$DELETE_RULE

FROM RDB$REF_CONSTRAINTS;

TABLE_CONSTRAINTS отображает ограничения на уровне таблицы.

CREATE VIEW TABLE_CONSTRAINTS (

CONSTRAINT_NAME,

TABLE_NAME,

CONSTRAINT_TYPE,

IS_DEFERRABLE,

INITIALLY_DEFERRED )

AS

SELECT RDB$CONSTRAINT_NAME, RDB$RELATION_NAME,

RDB$CONSTRAINT_TYPE, RDB$DEFERRABLE, RDB$INITIALLY_DEFERRED

FROM RDB$RELATION CONSTRAINTS;

Приложение 10. Коды ошибок

Коды ошибок, возвращаемые клиентам или модулям PSQL сервером Firebird 1.5.0, представлены в табл. П10.1. Некоторые коды недоступны в более ранних версиях Firebird. Важно убедиться, что сервер и клиент имеют корректную версию файла firebird.msg (interbase.msg для Firebird 1.0.x), хранящегося в корневом каталоге Firebird. Необязательно копировать MSG-файл на клиентские компьютеры, но если он присутствует, то должен быть корректным.

Таблица П10.1. Коды ошибок Firebird 1.5.0

SQLCODE

GDSCODE

Символ

Текст сообщения

101

335544366

segment

-Segment buffer length shorter than expected.

Длина сегмента буфера меньше, чем ожидается

100

335544338

from no match

-No match for first value expression.

Нет соответствия для первого значения выражения

100

335544354

no_record

-Invalid database key. Неверный ключ базы данных

100

335544367

segstr eof

-Attempted retrieval of more segments than exist.

Попытка поиска больше сегментов, чем существует

100

335544374

stream eof

-Attempt to fetch past the last record in a record stream.

Попытка загрузки в поток записей после последней записи

-84

335544554

nonsql security rel

-Table/procedure has non-SQL security class defined.

Для таблицы/процедуры определен класс безопасности, не являющийся SQL

-84

335544555

nonsql security fid

-Column has non-SQL security class defined.

Для столбца определен класс безопасности, не являющийся SQL

-84

335544668 -

dsql_procedure use err

-Procedure <string> does not return any values.

Процедура <строка> не возвращает никакого значения

-85

335544747

usrname too_long

-The username entered is too long. Maximum length is 31 bytes.

Введенное имя пользователя слишком длинное. Максимальная длина 31 байт

-85

335544748

password too long

-The password specified is too long. Maximum length is 8 bytes.

Указанный пароль слишком длинный. Максимальная длина 8 байт

-85

335544749

usrname required

-A username is required for this operation.

Для этой операции требуется имя пользователя

-85

335544750

password required

-A password is required for this operation.

Для этой операции требуется пароль

-85

335544751

bad?protocol

1 ... 209 210 211 212 213 214 215 216 217 ... 238
На этом сайте Вы можете читать книги онлайн бесплатно русская версия Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - Хелен Борри.
Книги, аналогичгные Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - Хелен Борри

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