oracle中如何同时向两张有主外键关系的表中插入数据

wnj89510 2012-08-07 10:11:11
示例:有两张表,学生信息表(简称信息表):student_info(
STUDENT_ID int not null,--主键ID
STUDENT_NAME VARCHAR2(10) not null,--姓名
STUDENT_SEX VARCHAR2(2),--性别
STUDENT_TEL VARCHAR2(20)--联系电话
);和学生成绩表(简称成绩表):student_core (
STUDENT_ID INT, --外键ID
SCORE_ID INT NOT NULL,--主键ID
JACORE NUMBER,--JAVA成绩
JPCORE NUMBER--日语成绩
);

其中信息表中的 STUDENT_ID字段我是用sequence 设置的自动增长,现在我从页面获得的数据(包括成绩,姓名等所有信息),要插入到数据库中,因为没有用到hibernate,现在要在后台自己写sql语句,各位有没有什么简单的方法,最好给出sql语句,因为我刚接触oracle,还不太懂,在线等,急~~!!
...全文
897 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wnj89510 2012-08-07
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

可以得到当前学生的学生ID,即刚添加进去的student_id
插入成绩表
insert into student_core (score_id,student_id,jacore,jpcore)

values(sequencename.nextval, '这里为学生对应的学生ID', ,)
LZ可以试试
[/Quote]
谢谢啦,要的就是这个
Iamagril 2012-08-07
  • 打赏
  • 举报
回复
可以得到当前学生的学生ID,即刚添加进去的student_id
插入成绩表
insert into student_core (score_id,student_id,jacore,jpcore)

values(sequencename.nextval, '这里为学生对应的学生ID', ,)
LZ可以试试
wnj89510 2012-08-07
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

显然不能一条语句插两个表啊,dao和两条sql有什么关系,

insert into student_info(student_id,student_name,student_sex,student_tel)

values(sequencename.nextval, '','','') 后面就传过来的参数拼进去就行
[/Quote]哦,大神,能不能把成绩表的那条insert语句也写出来,万分感谢。。。
wnj89510 2012-08-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

你先取出sequence值 然后在insert操作

oracle 中这样取 select XXXsequence.nextval from dual;
[/Quote]
嗯,这一步我想到了,我现在的问题是能不能用一条sql语句就可以同时向两张表里插值?
ladofwind 2012-08-07
  • 打赏
  • 举报
回复
显然不能一条语句插两个表啊,dao和两条sql有什么关系,

insert into student_info(student_id,student_name,student_sex,student_tel)

values(sequencename.nextval, '','','') 后面就传过来的参数拼进去就行
so_and_so 2012-08-07
  • 打赏
  • 举报
回复
你先取出sequence值 然后在insert操作

oracle 中这样取 select XXXsequence.nextval from dual;
wnj89510 2012-08-07
  • 打赏
  • 举报
回复
各位,帮帮忙啦,刚开始接触oracle,什么都还不懂。。。
wnj89510 2012-08-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

第二张表的score_id也弄成sequence吧,然后两条insert就可以啊
[/Quote]

我好像也弄成sequence了,现在主要是sql语句不会写,大神,求教啊,能不能用一条语句啊,因为我是要写到dao里面的
ladofwind 2012-08-07
  • 打赏
  • 举报
回复
第二张表的score_id也弄成sequence吧,然后两条insert就可以啊

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧