SQLSERVER:通过sys.tables实现批量删表,或者回滚表 begin try drop table #temp10 end try begin catch end catch select 'drop/*truncate*/ table dbo.'+name as droptable,ROW_NUMBER() over(order by name) as rownumber into #temp10 from sys.tables where name like 'member%'
删表的时候碰到表忙的情况,会报错. DROP TABLE TMP_TAB_T_AGENT * ERROR at line 1: ORA-14452: attempt to create, alter or drop an index on temporary table already in USE 这个时候可以使用几个视图查看一下当前哪些SESSION正在使用 SET lines 200 pages 100 col program FOR a20 col MODULE FOR a20 col
DECLARE num NUMBER; BEGIN SELECT COUNT(1) INTO num FROM USER_TABLES WHERE TABLE_NAME = UPPER('tableName') ; IF num > 0 THEN EXECUTE IMMEDIATE 'DROP TABLE tableName' ; END IF; END; 多表情况 declare num number; num1 number; num2 number; begin SELECT COUNT(