Назад | Перейти на главную страницу

Автоматически вставлять логин при создании новой строки в postgres

Можно ли в Postgres 10 автоматически вставлять имя роли входа при создании новой строки?

то есть я уже использую метку времени для отслеживания даты создания строки. Также было бы полезно увидеть, какой пользователь создал строку.

Спасибо!

Да. Просто сделайте столбец по умолчанию session_user. (Это псевдопеременная, а не вызов функции).

Если вы хотите запретить пользователю переопределять его, вы также должны убедиться, что GRANT запись разрешений в таблицу для каждого столбца, а не для таблицы в целом, и убедитесь, что обычный рабочий пользователь не является владельцем таблицы.

Или, наоборот, BEFORE INSERT OR UPDATE триггер, который устанавливает NEW.the_column := session_user.