Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
bonjour,
comment peut-on detecter dans une Proc (Sql Anywhere Sybase 9 ou 10)
l'existence d'1 table temporaire ??
Hors ligne
regarder dans les tables système ?
Hors ligne
salut, c'est un peu bourrin mais çà fait le job pour unt table temporaire locale (préfixée par #):
if exists(select 1 from sysprocedure where proc_name='temp_table_exists') then drop function temp_table_exists; end if; create function temp_table_exists( temptable varchar(128) ) returns int not deterministic begin declare ret int; set ret = 1; BEGIN EXECUTE IMMEDIATE 'delete from '+temptable+' where 0=1'; EXCEPTION WHEN OTHERS THEN SET ret=0; END; return ret; end;
et pour tester :
create table #ma_temp_table( id int not null default autoincrement, name char(100) not null, primary key (id) ) --select * from #ma_temp_table select temp_table_exists('#ma_temp_table') from dummy --return 1 drop table #ma_temp_table select temp_table_exists('#ma_temp_table') from dummy --return 0
Hors ligne