oracle建立 主键 和 外键 的问题
答案:2 悬赏:20
解决时间 2021-01-19 07:47
- 提问者网友:嗝是迷路的屁
- 2021-01-18 22:50
oracle建立 主键 和 外键 的问题
最佳答案
- 二级知识专家网友:鸠书
- 2021-01-19 00:27
3 stuid number(10) references t_stu(stuid) 就是这个字段关联t_stu表的stuid字段;
4 couseid number(10),
5 constraint fk_couseid foreign key(couseid)
6 references t_couse(couseid)
7 on delete cascade); 这个是外键关联,并做同步删除操作,就是如果t_couse表中的某个couseid数据被删除了,那么这张表相关的数据也会自动被删除;跟上面的区别就在于有没有做删除操作;
on delete cascade 就是同步删除的意思,比如t_couse表中有个couseid=5,t_score表中也有couseid=5的数据,当删除t_couse表中couseid=5的数据时,t_score表中所有couseid=5的数据也会自动删除;
可以写在同一行,但是要用逗号分格开; 望采纳,码字不容易追问3 stuid number(10) references t_stu(stuid) 就是这个字段关联t_stu表的stuid字段;
请问这个关联和下面4到7行的外键关联有什么区别???就是有没有做删除操作?追答3 stuid number(10) references t_stu(stuid) 建立的外键生成的名字是数据库自己分配的,constraint fk_couseid foreign key(couseid)建立的外键是你自己来命名的,on delete cascade);的意思就是同步关联删除,还有其他的操作,比如更新,设置成默认值等
4 couseid number(10),
5 constraint fk_couseid foreign key(couseid)
6 references t_couse(couseid)
7 on delete cascade); 这个是外键关联,并做同步删除操作,就是如果t_couse表中的某个couseid数据被删除了,那么这张表相关的数据也会自动被删除;跟上面的区别就在于有没有做删除操作;
on delete cascade 就是同步删除的意思,比如t_couse表中有个couseid=5,t_score表中也有couseid=5的数据,当删除t_couse表中couseid=5的数据时,t_score表中所有couseid=5的数据也会自动删除;
可以写在同一行,但是要用逗号分格开; 望采纳,码字不容易追问3 stuid number(10) references t_stu(stuid) 就是这个字段关联t_stu表的stuid字段;
请问这个关联和下面4到7行的外键关联有什么区别???就是有没有做删除操作?追答3 stuid number(10) references t_stu(stuid) 建立的外键生成的名字是数据库自己分配的,constraint fk_couseid foreign key(couseid)建立的外键是你自己来命名的,on delete cascade);的意思就是同步关联删除,还有其他的操作,比如更新,设置成默认值等
全部回答
- 1楼网友:神鬼未生
- 2021-01-19 01:23
stuid number(10) references t_stu(stuid)建立外键约束,约束名字是ORACLE自己命名的,后面那句你可以按自己的喜好命名, on delete cascade表示你在删除父表该行后子表也删除,
couseid number(10) constraint fk_couseid foreign key(couseid) references t_couse(couseid)中
couseid number(10)后面没加逗号,语法错了。
couseid number(10) constraint fk_couseid foreign key(couseid) references t_couse(couseid)中
couseid number(10)后面没加逗号,语法错了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯