通过查询执行的列默认值

Column default value via query execution

我有一个审计 table 跟踪用户更新数据。 有两种更新数据的方法,第一种是通过 GUI,登录用户将在审核中更新 table。其次是通过执行 sql 查询,现在在这种情况下,我想在审计 table 中填充登录的数据库用户。我想通过执行查询 Select user from dual

为审核用户列设置默认值来实现这一点

是否可以在 oracle 中将列的默认值设置为查询输出的结果?

不用查询,直接用关键字user

create table audit_table
(
  ... other columns ....
  changed_when timestamp   default current_timestamp not null, 
  changed_by   varchar(30) default user              not null
);