代码如下:
declare
v_name varchar2(10):='zzs';
v_sql varchar2(500);
v_s varchar(20);
cursor c(v_name varchar2)
is
select v_name from table;
begin
open c;
loop
if c%found then
fetch v_name into v_s;
v_sql ='insert into table2 values('||v_name||')';
DBMS_output.put_line('v_sql='||v_sql);
else
exit
end if;
end loop;
end;得到的值为zzs,请问如何才能得到zzs对应字段的值呢,实际上表中的zzs为
zzs
124
declare
v_name varchar2(10):='zzs';
v_sql varchar2(500);
v_s varchar(20);
cursor c(v_name varchar2)
is
select v_name from table;
begin
open c;
loop
if c%found then
fetch v_name into v_s;
v_sql ='insert into table2 values('||v_name||')';
DBMS_output.put_line('v_sql='||v_sql);
else
exit
end if;
end loop;
end;得到的值为zzs,请问如何才能得到zzs对应字段的值呢,实际上表中的zzs为
zzs
124
解决方案 »
- 请教一个日吞吐量比较大的数据库设计思路
- 32位oracle装在64位操作系统出现的问题
- 安装oracle报错 JavaThread "AWT-EventQueue-0"
- Oracle的访问限制
- 一个关于联接的问题让我百思不得其解
- oracle的日期问题
- oracle与mssql相比,在速度上会有很大差别吗?
- 突发奇想:为什么甲骨文不做一个各个平台(Linux、Windows等)可以通用的oracle???
- 跨网段连接数据库的问题,很急,盼大侠帮忙!
- server-side cursors和client-side cursor有什么区别,请举例说明。
- oracle10设置首选身份证明出错?
- 30分求高手帮忙一个算法问题(Oracle),用decode做最好。
declare
v_name varchar2(10):='zzs';
v_sql varchar2(500);
v_s varchar(20);
cursor c(v_name varchar2)
is
select v_name from table;
begin
open c;
loop
if c%found then
fetch c into v_s;
v_sql ='insert into table2 values('''||v_s||''')';
DBMS_output.put_line('v_sql='||v_s);
else
exit
end if;
end loop;
end;
2 v_name varchar2(10) := 'ename';
3 v_sql varchar2(500);
4 v_s varchar(20);
5 c sys_refcursor;
6 begin
7 open c for 'select ' || v_name || ' from emp';
8 loop
9 fetch c
10 into v_s;
11 exit when c%notfound;
12 v_sql := 'insert into emp2 values(''' || v_s || ''')';
13 DBMS_output.put_line('v_sql=' || v_sql);
14 end loop;
15 end;
16 /
v_sql=insert into emp2 values('SMITH')
v_sql=insert into emp2 values('ALLEN')
v_sql=insert into emp2 values('WARD')
v_sql=insert into emp2 values('JONES')
v_sql=insert into emp2 values('MARTIN')
v_sql=insert into emp2 values('BLAKE')
v_sql=insert into emp2 values('CLARK')
v_sql=insert into emp2 values('SCOTT')
v_sql=insert into emp2 values('KING')
v_sql=insert into emp2 values('TURNER')
v_sql=insert into emp2 values('ADAMS')
v_sql=insert into emp2 values('JAMES')
v_sql=insert into emp2 values('FORD')
v_sql=insert into emp2 values('MILLER')
PL/SQL procedure successfully completed
declare
v_name varchar2(10):='zzs';
cursor c(v_name varchar2)--这里的v_name 如何作为字段进行使用呢
is
select v_name from table;