我决定在这里完全推出SQL文件.
CREATE TABLE Account
(
AccountNumber INTEGER NOT NULL PRIMARY KEY,
Name varchar(30) NOT NULL
);
CREATE SEQUENCE SEQ_ADDR START WITH 1 INCREMENT BY 1;
CREATE TABLE Address
(
AddressNumber INTEGER NOT NULL PRIMARY KEY,
AccountNumber INTEGER NOT NULL,
IsPrimary INTEGER NOT NULL,
StreetName varchar(50) NOT NULL,
ZipCode INTEGER NOT NULL
);
CREATE TABLE Bill
(
AccountNumber INTEGER NOT NULL,
EndDate DATE NOT NULL,
StartDate DATE NOT NULL,
DueDate DATE NOT NULL,
CONSTRAINT BillFK FOREIGN KEY (AccountNumber) REFERENCES Account(AccountNumber),
CONSTRAINT BillPK PRIMARY KEY (AccountNumber, EndDate)
);
Run Code Online (Sandbox Code Playgroud)
同样,我得到的错误从第一个Constraint调用开始(未知命令以"CONSTRAINT ..."开头 - 忽略其余行.).我偶尔也会得到一个"未知的命令")" - 其余的行被忽略了." 有任何想法吗?
任何空行都将停止SQL*Plus接受输入块并将其放入缓冲区.
因此,当您CONSTRAINT在空行后启动关键字时,它会将其视为新命令,并抛出错误.
在运行所有之前尝试一下DDLs.
set sqlblanklines on
Run Code Online (Sandbox Code Playgroud)
您需要指示sql*plus忽略空行
| 归档时间: |
|
| 查看次数: |
2816 次 |
| 最近记录: |