Помогите создать триггер, который должен запускаться при создании любой таблицы и добавлять в нее два столбца:Время и Пользователь. Столбец Время должен иметь значение по умолчанию – время создания новой записи, а столбец Пользователь – учетную запись пользователя.
16 июня 2009 в 19:01
Судя по ora_login_user СУБД – Oracle
Ты что именно сделать хочешь? Создать системный триггер, который при создании новой таблицы, пихал бы в нее автоматом колонку с неким дефолтным значением?
Тогда так:
CREATE OR REPLACE TRIGGER my_trigger AFTER CREATE
ON my_schema.SCHEMA
declare
v_ddl varchar2(4000);
v_job number;
begin
if sys.dictionary_obj_type='TABLE' then
v_ddl := 'alter table ' || sys.dictionary_obj_name ||' add dt date default sysdate';
dbms_job.submit(v_job, 'execute immediate ''' || v_ddl || ''';', sysdate+(1/24/60/60));
end if;
end;
16 июня 2009 в 17:04
Можно пример этого? Для времени использую – sysdate, а для пользователя – ora_login_user. А вот добавление столбцов триггере не получается.
16 июня 2009 в 17:03
Для начала надо указать СУБД.