Oracle DDL错误-ORA 00907:缺少右括号

问题描述 投票:0回答:1

此DDL查询无法正常工作,我不知道为什么,不胜感激,请有经验的个人提供帮助:)

当我尝试在Oracle中运行它时,它返回错误消息ORA-00907:缺少右括号

CREATE TABLE "Attendees" (
  "attendee_id" number(8) PRIMARY KEY,
  "attendee_name" varchar2(50),
  "attendee_class" number(4),
  "attendee_school" varchar2(50),
  "attendee_status" varchar2(50)
);

CREATE TABLE "History" (
  "history_id" number(4) PRIMARY KEY,
  "history_dt" date,
  "history_time" timestamp,
  "history_status" varchar2(50)
);

CREATE TABLE "Event" (
  "event_id" number(10) PRIMARY KEY,
  "event_name" varchar2(200),
  "event_location" varchar2(100),
  "event_size" number(4),
  "start_dt" date,
  "end_dt" date,
  "class_restriction" number(4),
  "school_restriction" varchar2(100),
  ---"booking_id" number(10) references Booking(booking_id)
 --- "reservation_id" number(3) references Reservation(reservation_id)
);

CREATE TABLE "Booking" (
  "booking_id" number(4) PRIMARY KEY,
  "booking_date" date,
  "booking_cost" number(8),
  "booking_status" varchar2(50),
  "history_id" number(4) references History(history_id),
  "event_id" number(10) references Event(event_id)
);

CREATE TABLE "Reservation" (
  "reservation_id" number(3) PRIMARY KEY,
  "event_id" references Event(event_id),
  "attendee_id" references Attendees(attendee_id),
  "reservation_status" varchar2(50)
);

sql oracle oracle-apex ddl
1个回答
0
投票

如果您正在学习SQL,请学习在定义列和表时不要使用双引号。他们稍后会把查询弄得一团糟。

我不确定所有问题可能是什么,但这肯定是一个问题:

"event_id" references Event(event_id),
"attendee_id" references Attendees(attendee_id),

这些需求类型:

"event_id" number(10), references Event(event_id),
"attendee_id" number(8) references Attendees(attendee_id),
© www.soinside.com 2019 - 2024. All rights reserved.