1 sql oracle ddl syntax-error create-table
我正在使用oracle 10g ex来学习,所以这里是我的代码
CREATE TABLE MINE
(
NAME VARCHAR(10),
ID INT(3) PRIMARY KEY
);
Run Code Online (Sandbox Code Playgroud)
而我的错误是
ORA-00907:缺少右括号.
但我没有错过正确的括号.要解决这个问题,我还有其他任何机会或事情要知道.
INT不需要大小 - 它是别名NUMBER(38).
CREATE TABLE MINE
(
NAME VARCHAR(10),
ID INT PRIMARY KEY
);
Run Code Online (Sandbox Code Playgroud)
但是,您可能想要的是使用VARCHAR2和NUMBER类型:
CREATE TABLE MINE
(
NAME VARCHAR2(10),
ID NUMBER(3,0) PRIMARY KEY
);
Run Code Online (Sandbox Code Playgroud)
现在是时候养成良好的习惯 - 你可能也想要命名你的约束:
CREATE TABLE MINE
(
NAME VARCHAR2(10),
ID NUMBER(3,0) CONSTRAINT mine__id__pk PRIMARY KEY
);
Run Code Online (Sandbox Code Playgroud)