USER 运算符返回包含正在运行该进程的当前用户的登录名称(也称为授权标识符)的字符串。CURRENT_USER 运算符是 USER 运算符的同义词。
INSERT INTO cust_calls VALUES (221,CURRENT,USER,'B','Decimal point off', NULL, NULL); SELECT * FROM cust_calls WHERE user_id = USER; UPDATE cust_calls SET user_id = USER WHERE customer_num = 220;
USER 不更改用户 ID 的字母大小写。如果您在表达式中使用 USER 且当前用户为 Robertm,则 USER 运算符返回 Robertm,而不是 robertm 或 ROBERTM。
如果您指定 USER 作为缺省的列值,则 column 必须为类型 CHAR、VARCHAR、NCHAR、NVARCHAR 或 LVARCHAR。
如果您指定 USER 作为列的缺省值,则 column 的大小应不小于 32 字节。如果该列长度太小以至于不能存储缺省值,则在诸如 INSERT 或 ALTER TABLE 这样的操作期间,您会面临出错的风险。
在符合 ANSI 的数据库中,如果您不将 owner 名称括在引号中,则将表所有者的名称存储为大写字母。如果您使用 USER 运算符作为条件的一部分,则您必须确保存储 user 名称的方法与 USER 运算符返回的内容在字母大小写方面相匹配。