我创建了一个包含以下表格的电影数据库:
1.Film
2.People
3.Genres
4.Role
5.Users
这是我的sql
create table Film ( id INT(30),title varchar(30),images varchar(30)
primary key (id));
create table people(id INT(30),Fname varchar(30),Lname varchar(30),
primary key (id));
create table Role(id INT(30), name varchar(30),
primary key(id));
我希望在Film,People和Role table之间创建关系。我的问题是我需要创建一个表来建立这些表之间的关系吗?是否有必要对id列使用auto_increment?
答案 0 :(得分:0)
您想要创建一些表格,如:
FilmRole( FilmId INT, RoleId INT) these 2 columns would make your PK and they are also FK's to their
FilmPeople (FilmId INT, PeopleId INT) respective source tables.
FilmUsers( FilmId INT, UserId INT)
如果需要,您可以为每个表添加一个IDENTITY
(例如,对于SQL Server)列,但在这种特殊情况下,2列PK就足够了,因为这些表只是指向其他记录。
答案 1 :(得分:0)
您需要更改表并添加外键(一个表中的主键和另一个表中的属性)。示例如何在这里做! http://www.w3schools.com/sql/sql_foreignkey.asp
答案 2 :(得分:0)
do i need to create a table to make relation between those table ?
是的!强制执行参照完整性read this
is it necessary to use auto_increment for id column?
取决于但它是在桌面上创建PK的最佳方式