请问在oracle中怎样把游标中的数据插入一张表中?
比如游标中有3个字段的数据,而要插入的表中有四个字段,其中只有三个字段对应游标 问题点数:20、回复次数:10Top
1 楼xiaoxiao1984(笨猫儿)回复于 2006-07-03 14:36:32 得分 0
明确写出要插入的字段名
insert into tab_name(col1, col2, col3) values (ref.col1, ref.col2, ref.col3)Top
2 楼LinZhongBao(【豹哥】)回复于 2006-07-03 15:02:31 得分 0
同意 xiaoxiao1984(笨猫一只^_^) 正解Top
3 楼brightdoll()回复于 2006-07-03 15:29:20 得分 0
拜托,是使用游标里的纪录进行插入操作的,就是
fetch 游标名 into …………
我就是不知道这样的语法正确的应该是怎么样的Top
4 楼xiaoxiao1984(笨猫儿)回复于 2006-07-03 16:12:42 得分 0
fetch 游标名 into …………
这个不是插入语句阿,楼主问得是什么啊Top
5 楼benny0526()回复于 2006-07-03 16:14:07 得分 0
fetch 游标名 into v1,v2,v3;
insert into table_name(col1,col2,col3) values(v1,v2,v3);
或者你做游标的时候就以空值或0填充缺少的哪个字段,这不就可以一一对应了?
Top
6 楼benny0526()回复于 2006-07-03 16:15:30 得分 0
94啊,fetch 游标名 into后面是接变量名的,不能接字段名吧!Top
7 楼brightdoll()回复于 2006-07-03 16:19:45 得分 0
那应该怎么写才能让游标里面的数据插入到一张表里面,请教!Top
8 楼sozdream(Dream.Zhang)回复于 2006-07-03 16:20:34 得分 0
用 forall in.
否则效率很低~
(因为oracle从PLSQL环境转到SQL*Plus需要时间,再转回来又要时间)Top
9 楼brightdoll()回复于 2006-07-03 16:24:10 得分 0
麻烦给举个例子看一下具体的语法格式!Top
10 楼xiaoxiao1984(笨猫儿)回复于 2006-07-03 16:26:27 得分 20
可能申明游标的语句是:
declare cursor csr_ref is select id ,name,... from tab_name where ...;
ref csr_ref%rowtype;
... --打开游标等
fetch csr_ref into ref;
insert into tab_name1 values(ref.id, ref.name,...)
...Top




