Дата актуальности: 12.06.2009
FlexiObjDB
Объектно-ориентированное на
предметную область
долговременное хранилище информации.
Таблица базы данных: SYS_CONST_LIST
Назначение:
Справочник. Список констант
из множества констант
Системный (внутренний) ID-таблицы
= 19
Список и назначение полей таблицы.
Имя поля | Назначение | Индекс | Ссылка на таблицу |
Формат | Примечание |
ID_THIS | Уникальный ID строки | primary | VARCHAR(40) NOT NULL | вычисляется автоматически, генератор: GEN_SYSCONST |
|
ID_GRP | ID группы в контексте текущей группировки | + | SYS_CONST_GRP | VARCHAR(40) NOT NULL | группировка в контексте группы |
ITS_GLOBAL | Признак "глобальности" | + | INTEGER | вычисляется автоматически | |
ID_SYSTEM | Признак "системности" | + | INTEGER | ||
IS_READONLY | Признак "только чтение" | INTEGER | Если признак установлен, то без "помощи" флага YES_READONLY_RESET изменить значение константы невозоможно | ||
YES_READONLY_RESET | Служит для принудительного изменения значения константы при установленном признаке IS_READONLY | INTEGER | Чтобы изменить константу с признаком IS_READONLY, нужно при записи изменений установить в "1" значение поля YES_READONLY_RESET | ||
NUMPP | Порядковый номер строки в
контексте текущей группировки (сортировка) |
+ | INTEGER | ||
CONST_VALUE | Значение константы | VARCHAR(250) | Тип значения (строка, число, дата и т.д.) интерпретируется на уровне ПО | ||
MNEMO_CODE | Мнемо-имя константы (не обязательно) | + | VARCHAR(32) | Уникальность на уровне таблицы (если задано) | |
NOTE | Примечание | VARCHAR(200) | |||
INFO | Детальная информация (MEMO-поле) | BLOB SUB_TYPE TEXT SEGMENT SIZE 80 | MEMO-поле | ||
IDUSER_CREATE | ID пользователя, создавшего эту строку | + | USERS_LIST | VARCHAR(40) NOT NULL | |
DATE_CREATE | Дата-время создания строки | DATE NOT NULL | вычисляется автоматически | ||
IDUSER_UPDATE | ID пользователя, последним изменившего эту строку | + | USERS_LIST | VARCHAR(40) NOT NULL | |
DATE_UPDATE | Дата-время последнего изменения строки | DATE NOT NULL | вычисляется автоматически |
CREATE TABLE SYS_CONST_LIST (ID_THIS VARCHAR(40) CHARACTER SET WIN1251 NOT NULL COLLATE PXW_CYRL,
ID_GRP VARCHAR(40) CHARACTER SET WIN1251 NOT NULL COLLATE PXW_CYRL,
ITS_GLOBAL INTEGER,
ID_SYSTEM INTEGER,
IS_READONLY INTEGER,
YES_READONLY_RESET INTEGER,
NUMPP INTEGER,
MNEMO_CODE VARCHAR(32) CHARACTER SET WIN1251 COLLATE PXW_CYRL,
CONST_VALUE VARCHAR(250) CHARACTER SET WIN1251 COLLATE PXW_CYRL,
NOTE VARCHAR(200) CHARACTER SET WIN1251 COLLATE PXW_CYRL,
INFO BLOB SUB_TYPE TEXT SEGMENT SIZE 80 CHARACTER SET WIN1251,
IDUSER_CREATE VARCHAR(40) CHARACTER SET WIN1251 NOT NULL COLLATE PXW_CYRL,
DATE_CREATE DATE NOT NULL,
IDUSER_UPDATE VARCHAR(40) CHARACTER SET WIN1251 NOT NULL COLLATE PXW_CYRL,
DATE_UPDATE DATE NOT NULL,
PRIMARY KEY (ID_THIS));
Поддержка ссылочной целостности.
Поле | Master-table | Detail-table | Примечание |
ID_GRP |
SYS_CONST_GRP.ID_THIS |
в триггере BD_SYSCONSTGRP | |
ID_THIS |
- |
Индексы.
CREATE INDEX SYSCONST_IDGRP ON
SYS_CONST_LIST(ID_GRP);
CREATE INDEX SYSCONST_IDUSR_CR ON SYS_CONST_LIST(IDUSER_CREATE);
CREATE INDEX SYSCONST_IDUSR_UPD ON SYS_CONST_LIST(IDUSER_UPDATE);
CREATE INDEX SYSCONST_ITSGLOB ON SYS_CONST_LIST(ITS_GLOBAL);
CREATE INDEX SYSCONST_IDSYS ON SYS_CONST_LIST(ID_SYSTEM);
CREATE INDEX SYSCONST_MNEMO ON SYS_CONST_LIST(MNEMO_CODE);
CREATE INDEX SYSCONST_NUMPP ON SYS_CONST_LIST(NUMPP);
Триггеры.
Перед вставкой новой строки :
Перед изменением строки :
Перед удалением строки :
После вставки новой строки :
После изменения строки :
После удаления строки :
______________________________________
(c) Sergey Popov, респ.Коми,
г.Усинск,(2009)