Sql H2相当于Oracle';用户
Oracle的“用户”关键字是否有H2等价物?例如,在Oracle中,我可以执行以下操作:Sql H2相当于Oracle';用户,sql,oracle,h2,Sql,Oracle,H2,Oracle的“用户”关键字是否有H2等价物?例如,在Oracle中,我可以执行以下操作: SELECT USER FROM DUAL; 它将返回登录到数据库的用户。 具体来说,我希望将数据库用户默认为表上的created_by列,即: CREATE TABLE MY_TABLE( CREATED_BY Varchar2(100) DEFAULT USER NOT NULL ... ) 此语句将在Oracle数据库中工作,但H2会引发异常 未找到“用户”列 谢谢 在H2中不是函数吗
SELECT USER FROM DUAL;
它将返回登录到数据库的用户。
具体来说,我希望将数据库用户默认为表上的created_by列,即:
CREATE TABLE MY_TABLE(
CREATED_BY Varchar2(100) DEFAULT USER NOT NULL
...
)
此语句将在Oracle数据库中工作,但H2会引发异常
未找到“用户”列
谢谢 在H2中不是函数吗
SELECT USER()
将返回当前用户。作为列的默认值按预期工作:
create table MY_TABLE(
CREATED_BY Varchar2(100) DEFAULT USER() NOT NULL,
value Varchar2(10)
)
INSERT INTO MY_TABLE (value) VALUES ('XXX');
作为其他用户:
INSERT INTO MY_TABLE (value) VALUES ('YYY');
SELECT * FROM MY_TABLE;
结果:
CREATED_BY VALUE
SA XXX
SYLVAIN YYY