基本上我想知道使用带有或不带外键的REFERENCES之间的区别.
我有这两个例子:
CREATE TABLE Employee
(
id INT,
name VARCHAR(50),
birthYear INT,
boss INT REFERENCES Employees(id),
worksAt INT NOT NULL REFERENCES Department(id) ON DELETE CASCADE,
PRIMARY KEY (id,worksAt)
);
Run Code Online (Sandbox Code Playgroud)
例2:
CREATE TABLE Department
(
id INT PRIMARY KEY,
name VARCHAR(50),
numberOfEmployees INT,
location INT NOT NULL,
country INT NOT NULL,
manager INT,
FOREIGN KEY (location,country) REFERENCES Location(locId,countryId),
UNIQUE KEY (manager)
);
Run Code Online (Sandbox Code Playgroud)
我在这里问的是为什么第二个例子使用FOREIGN KEY关键字,而第一个例子仅使用REFERENCES.
此外,第一个似乎引用自己(我认为员工中的s是一个错误)如果是这样,为什么它使用REFERENCES如果它引用自己?