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

时间:2015-03-23 13:38:03

标签: oracle userid

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

is_date_enr     date        default sysdate not null,

是可能的。

1 个答案:

答案 0 :(得分:1)

您可以使用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列。