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

主键,外键,多个主键有关问题?

2013-03-22 
主键,外键,多个主键问题??3个表:studentinfo(sno,sname,ssex,school,sbirth)coursinfo(cno,cname,credit)s

主键,外键,多个主键问题??
3个表:
studentinfo(sno,sname,ssex,school,sbirth)
coursinfo(cno,cname,credit)
scinfo(sno,cno,score)
显然第一个表主键是sno,第二个表主键是cno,但是第三个表的主键应该是(sno,cno)的组合吧?那怎么弄呢?可以用两个外键的组合当主键吗?
[解决办法]
像第三个表的主键一般都是另建一列,sno和cno上再分别建外键,链接studentinfo,coursinfo
[解决办法]
studentinfo(sno(主键),sname,ssex,school,sbirth)
coursinfo(cno(主键),cname,credit)
scinfo(sid(新建一列主键),sno,cno,score)

[解决办法]

引用:
studentinfo(sno(主键),sname,ssex,school,sbirth)
coursinfo(cno(主键),cname,credit)
scinfo(sid(新建一列主键),sno,cno,score)


顶,经常做插入更新操作的话,搞个也业务逻辑无关的id做主键也不错
[解决办法]
引用:
3个表:
studentinfo(sno,sname,ssex,school,sbirth)
coursinfo(cno,cname,credit)
scinfo(sno,cno,score)
显然第一个表主键是sno,第二个表主键是cno,但是第三个表的主键应该是(sno,cno)的组合吧?那怎么弄呢?可以用两个外键的组合当主键吗?
              ……
可以做啊,很多设计都这样的拉。

热点排行