首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

2个数据表关系有关问题?

2013-01-06 
2个数据表关系问题??有个问题请教前辈们,就是2数据表的对应关系问题,例如表a的列c和表b的列d:1对1关系:a.c

2个数据表关系问题??
有个问题请教前辈们,就是2数据表的对应关系问题,
例如表a的列c和表b的列d:
1对1关系:a.c数据是唯一,b.d数据也是唯一,并且a.c和a.d有相同对应数据
1对多关系:a.c数据是唯一,b.d数据不是唯一,并且a.c和a.d有相同对应数据
多对多关系:a.c数据是不是唯一,b.d数据不是唯一,并且a.c和a.d有相同对应数据
能这样理解吗?谢谢!
[解决办法]
最后一个多对多关系不完全正确.
学生信息表1:
学号,姓名
学生信息表2:
学号,家庭住址
这就是一对一关系.
学生信息表:
学号,姓名
学生选课表:
学号,课程名称
这就是一对多关系,因为一个学生可能会选多门课程.
学生信息表:
学号,姓名
课程信息表:
课程编号,课程名称
这两个表,虽然在表中学号和课程编号具有唯一性,但它们两个表的关系是多对多,因为,一个学生要选多门课程,一门课程要被多个学生选.
多对多关系在关系型数据库中,通常采用纽带表来实现,比如,用一个选课表(含每个学生每门课程的成绩):
学号,课程编号,成绩
在这个表中,学号是不唯一的,课程编号也是不唯一的,但它既是学生信息表的外键表,又是课程信息表的外键表,因此称为纽带表.这个表也有特殊性,学号+课程编号,是唯一的,可以作为这个表的主键.
[解决办法]

建议楼主学习一下什么 主键、外键、表的连接等概念
[解决办法]
1对1关系:a表中的c中某一行,只能在b表的d列中找到有且仅有一行数据。
 1对多关系:a.c,能在b表中的d列找到多余1条的数据。
 多对多关系:a.c 可以在b.d找到多条数据,反之亦然

热点排行