Как изменить структуру таблицы SEC$USERS в Firebird 3

В Firebird 3 есть таблица пользователей

CREATE TABLE SEC$USERS (
SEC$USER_NAME    CHAR(31) CHARACTER SET UNICODE_FSS,
SEC$FIRST_NAME   SEC$NAME_PART /* SEC$NAME_PART = VARCHAR(32) NOT NULL */,
SEC$MIDDLE_NAME  SEC$NAME_PART /* SEC$NAME_PART = VARCHAR(32) NOT NULL */,
SEC$LAST_NAME    SEC$NAME_PART /* SEC$NAME_PART = VARCHAR(32) NOT NULL */,
SEC$ACTIVE       BOOLEAN,
SEC$ADMIN        BOOLEAN,
SEC$DESCRIPTION  BLOB SUB_TYPE 1 SEGMENT SIZE 80 CHARACTER SET UNICODE_FSS,
SEC$PLUGIN       CHAR(31) CHARACTER SET UNICODE_FSS);

Возможно ли ее изменить ?

Если да то как ?

Мне нужно добавить поля с ИД организацией, отделом и должностью.


Ответы (1 шт):

Автор решения: AndreyVoropay

Как вариант использовать таблицу SEC$USER_ATTRIBUTES

Добавить:

ALTER USER user1 SET TAGS (organization='1', department='1', post='1')

Удалить:

ALTER USER user1 SET TAGS (DROP organization, DROP department, DROP post)

Отобразить:

SELECT sec$key, sec$value FROM sec$user_attributes WHERE sec$user_name='user1'

В сущности эта таблица SEC$USER_ATTRIBUTES , это база данных ключ значение.

→ Ссылка