sql - ORA-00906缺少左括号错误

标签 sql oracle syntax-error ddl

我刚开始使用Oracle SQL,遇到错误

ERROR at line 2: ORA-00906: missing left parenthesis



我的代码是这样的:
CREATE TABLE Employees(    
dept_id varchar2(4), PRIMARY KEY, NOT NULL,
Dept_name varchar2(30), NOT NULL, 
Manager_id varchar2(4));

为什么会出现此错误,我该如何解决?
正如我期望的那样,将创建一个包含3列的表格(dept_id,Dept_name,Manager_id)

最佳答案

问题是列类型定义和,定义之间的逗号(not null)。这很容易解决,只需删除它们。另外,由于primary key表示unique not null,您可以在not null上删除多余的dept_id子句:

CREATE TABLE Employees(
dept_id varchar2(4) PRIMARY KEY, -- here
Dept_name varchar2(30) NOT NULL, 
Manager_id varchar2(4)
);

关于sql - ORA-00906缺少左括号错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27463131/

相关文章:

java - 如何在 Oracle 10gR2 和 JPA 中做到不区分大小写和不区分重音?

php - 将表情符号从 php Web 应用程序传递到 Oracle 数据库和 mysql

php - PHP解析/语法错误;以及如何解决它们

sql - 在Oracle SQL表中更新日期

mysql - 独特作者最近发布的 X 篇文章

sql - 使用数据库中的新记录详细信息查找最旧的记录

bash - 可以将粘贴命令与命令一起使用,而不与文件一起使用吗?

php - eval() 代码中的意外 $end

SQL 'WHERE NOT some condition' 不排除条件

java - 没有 createQuery() 的 Hibernate 连接