mysql 如何在两个表主键之间添加约束

9gm1akwq  于 2023-08-02  发布在  Mysql
关注(0)|答案(2)|浏览(107)

我是stackoverflow的新手,所以如果有任何格式错误,或者其他任何东西,请告诉我。
我是SQL的新手,所以请与我分享。
我有两张table:

CREATE TABLE Users (
    idUser INT NOT NULL PRIMARY KEY,
    username VARCHAR(100) NOT NULL
)

CREATE TABLE Login(
    idLogin INT NOT NULL PRIMARY KEY,
    idUser INT NOT NULL,
    dateOfLogin DATETIME NOT NULL
)

字符串
我需要添加一个约束,例如Users.idUser = Login.idUser。我该怎么做?
我尝试了以下尝试:
将创建表更改为:

CREATE TABLE Login(
    idLogin INT NOT NULL PRIMARY KEY,
    idUser INT FOREIGN KEY REFERENCES Users(idUser),
    dateOfLogin DATETIME NOT NULL
)


但是老师不同意这个解决方案,他希望通过不同的Query添加约束。

ygya80vv

ygya80vv1#

使用ALTER TABLE向现有表添加约束:

ALTER TABLE Login ADD CONSTRAINT FOREIGN KEY (idUser) REFERENCES Users (idUser);

字符串

sqougxex

sqougxex2#

改为使用ALTER TABLE

ALTER TABLE Login
ADD CONSTRAINT FK_LoginUsersOrder
FOREIGN KEY (idUser ) REFERENCES Users(idUser);

字符串

相关问题