我在SQL Server 2008数据库中有两个表
Courses - CourseID[PK], CourseName, UnivID[Foreign Key]
//可以有多个值University UnivID[PK], UnivName, AvailableCourse[foriegn key ]
//可以有很多课程现在,一门课程可以在不止一所大学上学,一所大学也可以开设多门课程。
那么如何将这两个表联系起来呢?我想避免使用逗号分隔值。
答案 0 :(得分:0)
这称为多对多关系。你会在网上找到很多文章。基本上,您从课程表中取出UniversityId,并创建另一个包含UniversityId和CourseId列的大学课程表。这表示哪些课程由哪所大学提供。
有一个很棒的writeup with examples here。
答案 1 :(得分:0)
您基本上需要一个包含两个主键的“中间”或“链接”表:
University_Course (UnivID, CourseID)
通过在该表中添加行,您可以将任意数量的大学与任意数量的课程相关联。
University_Course.UnivID
是University.UnivID
University_Course.CourseID
是Courses.CourseID