创建表错误 - Oracle SQL [英] Create Table Error - Oracle SQL
问题描述
我需要这方面的帮助,它在 Oracle SQL Developer 中不断出现相同的错误.
<块引用>从第 15 行开始出错 -
创建表 B_BOOKING (booking_number int NOT NULL PRIMARY KEY,date_booked 日期,performance_order 整数,base_pay int,band_number int,音乐会编号 int,外键参考 B_CONCERT(音乐会编号))
<块引用>
命令行错误:21 列:34 错误报告 - SQL 错误:ORA-00906: 缺少左括号00906. 00000 - 缺少左括号"*原因:
*动作:
您似乎在尝试内联声明外键并且语法不正确,您想要:
创建表 B_BOOKING (预订编号 int PRIMARY KEY,date_booked 日期,performance_order 整数,base_pay int,band_number int,音乐会编号 int REFERENCES B_CONCERT(音乐会编号))
此外,您不需要 PRIMARY KEY
列上的 NOT NULL
约束.
或者,您可以将约束声明为:
创建表 B_BOOKING (预订编号 int PRIMARY KEY,date_booked 日期,performance_order 整数,base_pay int,band_number int,Concert_number int,CONSTRAINT 约束名外键(音乐会编号)参考 B_CONCERT(concert_number))
I need help with this it keeps giving the same error in Oracle SQL Developer.
Error starting at line : 15 in command -
CREATE TABLE B_BOOKING (
booking_number int NOT NULL PRIMARY KEY,
date_booked date,
performance_order int,
base_pay int,
band_number int,
concert_number int, FOREIGN KEY REFERENCES B_CONCERT(concert_number)
)
Error at Command Line : 21 Column : 34 Error report - SQL Error: ORA-00906: missing left parenthesis 00906. 00000 - "missing left parenthesis" *Cause:
*Action:
You appear to be trying to declare a foreign key inline and have the syntax incorrect, you want:
CREATE TABLE B_BOOKING (
booking_number int PRIMARY KEY,
date_booked date,
performance_order int,
base_pay int,
band_number int,
concert_number int REFERENCES B_CONCERT(concert_number)
)
Also, you do not need a NOT NULL
constraint on a PRIMARY KEY
column.
Alternatively you can declare the constraint as:
CREATE TABLE B_BOOKING (
booking_number int PRIMARY KEY,
date_booked date,
performance_order int,
base_pay int,
band_number int,
concert_number int,
CONSTRAINT constraint_name FOREIGN KEY ( concert_number )
REFERENCES B_CONCERT(concert_number)
)
这篇关于创建表错误 - Oracle SQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!