Вы знаете, как мы могли бы использовать:
dateStamp DATE DEFAULT sysdate
Для присвоения значения по умолчанию столбцу в table_x. Что, если я хочу назначить функцию по умолчанию? Могу ли я сделать это?
Функция будет иметь некоторые значения из «table_params» для выполнения некоторой формулы, включая столбец с именем «base» в table_x.
Я мог бы написать курсор для перебора и запуска оператора обновления, но мне было просто любопытно, возможно ли это. заранее спасибо.
2 ответа
Вы можете написать триггер INSERT для таблицы, вызывающей нужную вам функцию.
Из документации Oracle:
Ограничение значений столбца по умолчанию
Выражение DEFAULT не может содержать ссылки на функции PL / SQL или на другие столбцы, псевдостолбцы CURRVAL, NEXTVAL, LEVEL, PRIOR и ROWNUM или дата константы, которые не указаны полностью.
Либо используйте триггер (как уже упоминалось), либо запустите оператор UPDATE после оператора (ов) INSERT (не должно быть проблем, если вы храните свой DML в PL / SQL).
Похожие вопросы
Новые вопросы
oracle
Oracle Database - это многомодельная система управления базами данных, созданная корпорацией Oracle. НЕ используйте этот тег для других продуктов, принадлежащих Oracle, таких как Java и MySQL.