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),
);