我在Oracle中输入了以下SQL命令,但它抱怨“ORA-00922:缺少或无效选项”
CREATE TABLE Student (
StuID NUMBER(15),
StuName VARCHAR2(50),
Phone VARCHAR2(20),
PRIMARY KEY (StuID))
CREATE TABLE Program (
ProCode VARCHAR2(12),
ProTitle VARCHAR2(50),
PRIMARY KEY (ProCode))
WHY ???
答案 0 :(得分:8)
如果您正在使用OracleXE中可怕的HTML GUI(在浏览器内),那么它不支持运行多个语句。
使用SQL Developer,SQL * Plus或任何其他GUI工具。
答案 1 :(得分:5)
CREATE TABLE Student (
StuID NUMBER(15),
StuName VARCHAR2(50),
Phone VARCHAR2(20),
CONSTRAINT PK_STUID PRIMARY KEY (StuID))
找到答案here。
修改强>
另外,请尝试使用/
作为语句分隔符,而不是;
答案 2 :(得分:1)
请勿尝试定义StuID的大小。 还添加约束键工作 并确保在CREATE之前使用DROP 像这样:
DROP TABLE Student;
CREATE TABLE Student (
StuID NUMBER,
StuName VARCHAR2(50),
Phone VARCHAR2(20),
constraint pk_Student PRIMARY KEY (StuID));
DROP TABLE Program;
CREATE TABLE Program (
ProCode VARCHAR2(12),
ProTitle VARCHAR2(50),
constraint pk_Program PRIMARY KEY (ProCode));