Oracle:在新条目中自动添加当前用户 ID

Oracle : auto add the current user id in a new entry

我要创建一个 table,我需要获取当前用户 ID。 我想知道是否有像当前日期这样的解决方案:

is_date_enr     date        default sysdate not null,

有可能。

您可以使用 UID 和 USER pseudocolumns 来做到这一点:

create table test (
  tst_date date default sysdate not null,
  tst_user varchar2(20) default user not null,
  tst_uid number default uid not null,
  field1 number,
  field2 varchar2(10));

测试:

insert into test (field1, field2) values (1, 'ABC');
insert into test (field1, field2) values (2, 'DEF');
insert into test (field1, field2) values (3, 'XYZ');

select * from test;

TST_DATE             TST_USER  TST_UID FIELD1    FIELD2
-------------------  --------  -------  --------  --------
2015-03-23 17:41:28  SCOTT         236         1  ABC
2015-03-23 17:41:28  SCOTT         236         2  DEF
2015-03-23 17:41:28  SCOTT         236         3  XYZ

TST_DATETST_USERTST_UID 已自动填充。