C# 我可以创建一个像这样的SQL表,并将to表连接到一个表吗?
这大概就是你想要的:C# 我可以创建一个像这样的SQL表,并将to表连接到一个表吗?,c#,sql,sql-server,C#,Sql,Sql Server,这大概就是你想要的: Create Table Movie ( ID int not null IDENTITY(1,1) Primary Key, Title varchar(50), ReleaseDate date not null, Genre varchar(50), Price decimal(18,2), Rating varchar(50), Autors_ID int FOREIGN KEY REFERENCES Movi
Create Table Movie (
ID int not null IDENTITY(1,1) Primary Key,
Title varchar(50),
ReleaseDate date not null,
Genre varchar(50),
Price decimal(18,2),
Rating varchar(50),
Autors_ID int FOREIGN KEY REFERENCES Movie_Autors(Autors_ID)
)
Create Table Autors (
ID int not null IDENTITY(1,1) Primary Key,
Name varchar(50),
Born date not null,
About text,
Movie_ID int FOREIGN KEY REFERENCES Movie_Autors(Movie_ID)
)
Create Table Movie_Autors (
ID int not null IDENTITY(1,1) Primary Key,
Movie_ID int FOREIGN KEY REFERENCES Movie(ID),
Autors_ID int FOREIGN KEY REFERENCES Autors(ID),
)
也就是说,您在电影
或自动档
中没有外键引用,因此您不应该声明任何外键引用
请注意,非空
和主键
是多余的<代码>主键就足够了
我还将
text
更改为varchar(max)
否。如果您尝试,您将在电影
上得到一个错误,因为自动移动
不存在。是的,它是一个多对多表结构,看起来您已经完成了。除了清晰之外,作者和电影中的ID可能与电影作者表中的ID相同,因此两个表中的电影ID实际上都是ID,看得更深入一些-为什么在Autors
和Movie
表中有Autors\u ID
和Movie
列?两个表之间的多对多链接保存在Movie\u Autors
表中。不,外键不应该双向移动。只有表观者应该有外键到电影,自动表。也考虑在电影观众桌上没有身份,取而代之的是制作电影PK和AutoStID。这将确保您不能在同一部电影和autor之间有多个链接。你真的是指作者而不是作者吗?
Create Table Movie (
ID int not null IDENTITY(1,1) Primary Key,
Title varchar(50),
ReleaseDate date not null,
Genre varchar(50),
Price decimal(18,2),
Rating varchar(50)
);
Create Table Autors (
ID int not null IDENTITY(1,1) Primary Key,
Name varchar(50),
Born date not null,
About varchar(max)
);
Create Table Movie_Autors (
ID int not null IDENTITY(1,1) Primary Key,
Movie_ID int FOREIGN KEY REFERENCES Movie(ID),
Autors_ID int FOREIGN KEY REFERENCES Autors(ID),
);