Имя столбца, для которого определен этот перечисляемый тип. Заметьте, что то же имя столбца появляется во множестве системных таблиц
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 |