create or replace procedure Liquidate(TData in VARCHAR2) is
v_count int;
t_str varchar2(100);
begin
select count(*) into v_count from user_tables where table_name='TargetTab';
if v_count > 0 then
insert into TargetTab select * From Tabs;
else
t_str='create table TargetTab as select * from Tabs';
execute immediate t_str;
end if;
commit;
end Liquidate;该过程单独每句话都在command窗口里可执行
但在过程里就是出错。报表或视图不存在,也就是说只要系统里不存在该表,语句里用到了insert 就会报错不管做不做判断。(不知是否这样)
如果想实现我所说的功能该怎么做。谢谢了。急求
我老ID 密码忘了只能注册个新的。再次感谢
v_count int;
t_str varchar2(100);
begin
select count(*) into v_count from user_tables where table_name='TargetTab';
if v_count > 0 then
insert into TargetTab select * From Tabs;
else
t_str='create table TargetTab as select * from Tabs';
execute immediate t_str;
end if;
commit;
end Liquidate;该过程单独每句话都在command窗口里可执行
但在过程里就是出错。报表或视图不存在,也就是说只要系统里不存在该表,语句里用到了insert 就会报错不管做不做判断。(不知是否这样)
如果想实现我所说的功能该怎么做。谢谢了。急求
我老ID 密码忘了只能注册个新的。再次感谢
我把 insert 语句也改成动态调用
t_str= ‘insert into TargetTab select * From Tabs’;
execute immediate t_str; 请问原因是什么
有没有大大解释