簡體   English   中英

Oracle 表中缺少右括號錯誤

[英]Missing right parenthesis error in Oracle table

CREATE TABLE Countries
    (CountryID INT NOT NULL PRIMARY KEY,
    CountryName VARCHAR2(100) NOT NULL,
    RegionID INT FOREIGN KEY REFERENCES Regions(RegionID)
    );

一直向我拋出這個: ORA-00907: missing right parenthesis

我做錯了什么?

內聯外鍵語法不采用FOREIGN KEY關鍵字。

考慮:

CREATE TABLE Countries (
    CountryID INT NOT NULL PRIMARY KEY,
    CountryName VARCHAR2(100) NOT NULL,
    RegionID INT REFERENCES Regions(RegionID)
);

或者,您可以在另一行聲明外鍵,如下所示:

CREATE TABLE Countries (
    CountryID INT NOT NULL PRIMARY KEY,
    CountryName VARCHAR2(100) NOT NULL,
    RegionID INT,
    CONSTRAINT fkRegionID FOREIGN KEY (RegionID) REFERENCES Regions(RegionID)
);

這也有效:

CREATE TABLE Countries (
    CountryID INT NOT NULL PRIMARY KEY,
    CountryName VARCHAR2(100) NOT NULL,
    RegionID INT,
    FOREIGN KEY (RegionID) REFERENCES Regions(RegionID)
);

DB Fiddle 上的演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM