
student表是学生表 里面有字段:学号和姓名 学号是主键
sc表是成绩表 里面有字段:学号和学科号 还有成绩 这里面的学号就是外键,关联着 student表的主键学号
简单来说:一个表的外键关联着 另外一个表的主键
外键的作用 保持数据完整性 .......
拿上面的例子说:如果学生表 学号为1的记录删除了 ,那成绩表sc里面对应有学号为1的记录 是不是应该也删除呢? 所以一般设置级联删除 这样删除了主键 外键的值跟着删除。。。
主键是唯一可以确定一条记录的一个属性或属性组,比如学生表,学号,姓名,性别等属性,姓名,性别都不能唯一的确定一条记录(有重名的情况),所以主键是学号,修课表有属性学号,课程号,成绩,因为一个学生可以修多门课程,所以学号有重复情况,一门课程可以被多个学生修,所以课程号也有重复情况,但是学号和课程号合起来就不重了,所以主键就是(学号,课程号)
给Sql server 2008数据库中的表建立外键,建立表与表之间的逻辑关系,通过EF获取表以后,会出现关系图http://jingyan.baidu.com/article/08b6a591ad999314a8092298.html
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)