execute immediate 'select 1 into a from '||table_name;
execute immediate 'select t.a,t.b from '||tablename||' t where t.c=''' || condition || '''' into v_a, v_b;动态sql,用||连接。查询结果可以放在后面的v_a,v_b变量里面。
execute immediate 'select 1 into a from '||table_name; execute immediate 'select t.a,t.b from '||tablename||' t where t.c=''' || condition || '''' into v_a, v_b; 这些语句是在过程里吗?
create or replace procedure CRT_TAB is mysql varchar2(8000); adate varchar2(20); begin select to_char(sysdate-1,'yyyymmdd') into adate from dual; mysql:='create table act_gavl_'||adate||' as select * from act_gavl_'||adate||'@hydb' ; execute immediate mysql; DBMS_OUTPUT.PUT_LINE(mysql); end CRT_TAB;这是我每天要从服务器中要动态生成的表!!
execute immediate 'select column1,clumn2 from tablename' into var1,var2;
execute immediate 'select 1 into a from '||table_name; execute immediate 'select t.a,t.b from '||tablename||' t where t.c=''' || condition || '''' into v_a, v_b;
{
...............
SELECT A INTO B FROM TABLE_NAME;
...........................}
不过好象ORACLE里没有这个东西
楼上的能不能给个具体的例子啊?
condition || ''''
into v_a, v_b;动态sql,用||连接。查询结果可以放在后面的v_a,v_b变量里面。
execute immediate 'select t.a,t.b from '||tablename||' t where t.c=''' ||
condition || ''''
into v_a, v_b;
这些语句是在过程里吗?
is
mysql varchar2(8000);
adate varchar2(20);
begin
select to_char(sysdate-1,'yyyymmdd') into adate from dual;
mysql:='create table act_gavl_'||adate||' as select * from act_gavl_'||adate||'@hydb' ;
execute immediate mysql;
DBMS_OUTPUT.PUT_LINE(mysql);
end CRT_TAB;这是我每天要从服务器中要动态生成的表!!
execute immediate 'select t.a,t.b from '||tablename||' t where t.c=''' ||
condition || ''''
into v_a, v_b;