【发布时间】:2018-12-11 21:18:23
【问题描述】:
我目前正在为一个班级项目使用 SQL 编码并收到以下错误:
错误报告 - ORA-00922: 缺少或无效选项 00922. 00000 - “缺少或无效选项” *原因:
*行动: 从第 1 行开始的错误命令 -
我的代码如下所示:
create table Admini(
Admin_ID number(8) primary key,
EmployeeID number(8) references EmployeeInformation(EmployeeID),
BookingID number(8) references Booking(BookingID)
)
create table Booking(
BookingID number(8) primary key,
CustomerID number(8) references Customer(CustomerID),
VehicleID number(8) references vehicle(VehicleID),
AdminID number(8) references Admini(AdminID),
BookingDate date not null,
BookingDestination varchar2(30) not null,
NumPassengers number(6) not null,
SecondDriverNeeded varchar2(5) check(SecondDriverNeeded in('TRUE','FALSE')),
DrivingDuration number(3) not null
)
create table Customer(
CustomerID number(8) primary key,
CompanyName varchar2(30) not null,
ContactName varchar2(30) not null,
CustomerAddress varchar2(30) not null,
CustomerEmail varchar2(30) not null,
ContactNumber number(10) not null
)
create table Driver(
DriverID number(8) primary key,
EmployeeID number(8) references Admini(AdminID),
DLicenseNum varchar2(16) references DLicense(DLicenseNum),
PCVSerialNum number(20) references PCV(PCVSerialNum),
CPCSerialNum number(20) references CPC(CPCSerialNum),
DrugTestID number(8) references DrugTest(DrugTestID),
DriverBreakLength number(3) not null
)
create table CPC(
CPCSerialNum number(20) primary key,
CPCExpiryDate date not null
)
create table DLicense(
DLicenseNum varchar2(16) primary key,
DLExpiryDate date not null,
PenaltyPoints number(2) not null
)
create table DrugTest(
DrugTestID number(8) primary key,
TestDate date not null,
TestResults varchar2(8) check(TestResults in ('POSITIVE','NEGATIVE')),
TestType varchar2(7) check(TestType in ('DRUG','ALCOHOL','BOTH'))
)
create table EmployeeInformation(
EmployeeID number(8) primary key,
EmployeeFirstName varchar2(30) not null,
EmployeeLastName varchar2(30) not null,
EmployeeAddress varchar2(30) not null,
EmployeeHomePhone number(10) not null,
EmployeeDOB date not null,
EmployeeGender varchar2(6) check(EmployeeGender in ('MALE','FEMALE','OTHER')),
EmployeePosition varchar2(6) check(EmployeePosition in ('ADMIN','DRIVER')),
EmployeeInsuranceNum varchar2(9) unique,
EmployeeSalary number(10) not null
)
create table PCV(
PCVSerialNum number(20) primary key,
PCVExpiryDate date not null
)
create table Vehicle(
VehicleID number(8) primary key,
DriverID number(8) references Driver(DriverID),
VehicleAvailable varchar2(5) check(VehicleAvailable('TRUE','FALSE')),
VehicleRate number(4) not null,
VehicleModel varchar2(10) not null,
VehicleMake varchar2(10) not null,
DateOfRegistration date not null,
RegistrationNumber number(8) unique,
VehicleColour varchar2(10) not null
)
是什么导致了我的错误?
【问题讨论】:
-
您是否尝试运行单个表?你有一堆东西如果你测试一个表来看看实际错误在哪里会更容易
标签: sql oracle debugging syntax syntax-error