我正在尝试运行此代码,对我来说似乎是正确的,但我收到一条错误消息,指出缺少右括号。
代码如下:
CREATE TABLE CUSTOMER
(
CUSTOMER_ID INT NOT NULL,
NAME VARCHAR(30) NOT NULL,
DATE_OF_BIRTH DATE,
PHONE_NB CHAR(8) NOT NULL,
ADDRESS VARCHAR(50),
TOTAL_SPENDING FLOAT NOT NULL DEFAULT 0.0,
PRIMARY KEY(CUSTOMER_ID)
);
有人可以帮助我解决我的问题吗?
答案 0 :(得分:2)
自从您标记了SQL Developer ...
...该工具会尝试提示您,甚至在您单击执行按钮之前都会出现问题
该列的默认值会使解析器感到困惑,因为此时不希望使用它。
将其移动到数据类型之后,您会很好
python 1.py &
python 2.py &
PS在oracle中,使用VARCHAR2,而不是VARCHAR。尽管VARCHAR可以“工作”,但它是保留的,可能在将来的版本中有所不同。
答案 1 :(得分:0)
您使用的列定义子句顺序错误:约束(NOT NULL
)应该遵循默认值。
这是正确的方法:
CREATE TABLE CUSTOMER
(
CUSTOMER_ID INT NOT NULL,
NAME VARCHAR(30) NOT NULL,
DATE_OF_BIRTH DATE,
PHONE_NB CHAR(8) NOT NULL,
ADDRESS VARCHAR(50),
TOTAL_SPENDING FLOAT DEFAULT 0.0 NOT NULL ,
PRIMARY KEY(CUSTOMER_ID)
);