我正在尝试创建一个带有自动列的表,其值是使用我定义的函数计算的。但是,当我尝试创建表时,我不断收到 ora-00907:缺少右括号。任何人都可以帮忙吗?
这是创建代码:
CREATE TABLE NEW_EMP2 (
SSN CHAR(9),
EMP_NUM2 CHAR(5) automatic as newemp2id(SSN),
Fname VARCHAR2(15),
Lname VARCHAR2(15),
Bdate DATE
)
这是函数newemp2id的代码:
CREATE OR REPLACE FUNCTION newemp2id (i_ssn NCHAR) RETURN NCHAR
IS
BEGIN
RETURN 'E'||(1000+SUBSTR(i_ssn,6,4));
END
对此的任何帮助将不胜感激,谢谢!
更新:我在 Windows Vista 机器上使用 Oracle Express Edition,以防万一。