Ruseni tabulek na Oracle bez chyby

Honza Pazdziora adelton na informatics.muni.cz
Středa Duben 16 16:46:55 CEST 2003


On Wed, Apr 16, 2003 at 09:07:52AM +0000, Pavel Stehule wrote:
> 
> Pisi "multiplatformni" aplikaci, kde vytvarim a mazu tabulky. Ma to byt
> funkcni jak pro MSSQL, tak pro Oracle. MSSQL mam na stole, s nim problem
> nemam, ale s Oracle bych potreboval poradit.
> 
> Potrebuji zrusit tabulku, tak aby v pripade, ze tabulka neexistuje mi to
> nehlasilo chybu. A potreboval bych to jako SQL prikaz, rad bych se vyhnul
> ulozenym proceduram (v mssql je to jednoduche, protoze je tam if rozsireni
> jazyka). Tedy analogii v mssql
> 
> if exists (select * from dbo.sysobjects where id = object_id(N'" & tmpName &
> "') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
> drop table tmpName 
> GO
> 
> existuje neco takoveho?

Muzete udelat drop a obalit ho osetrenim vyjimky, neco jako

	begin
	  execute immediate 'drop table jmeno_tabulky';
	exception when others then
	  null;
	end;

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
 .project: Perl, mod_perl, DBI, Oracle, auth. WWW servers, XML/XSL, ...
      ... all of these signs saying sorry but we're closed ...


Další informace o konferenci Test