2015-05-29 54 views
0

是否有更好的方法來刪除臨時表Azure SQL刪除臨時表(如果它存在於SQL Azure上)

BEGIN TRY 
    DROP TABLE #customMap 
END TRY 
BEGIN CATCH 
END CATCH 

也許不需要在Azure SQL上刪除臨時表,因爲會話結束時會刪除表。

if (OBJECT_ID('#candidates')) is not null 
begin 
    drop table #candidates; 
end; 

或本

if (OBJECT_ID('tempdb..#candidates')) is not null 
begin 
    drop table #candidates; 
end; 

不起作用。

回答

2

在Azure中的SQL數據庫,你可以使用DROP IF EXISTS(DIE)語法:

create table #temp (id int) 

drop table if exists #temp 
0
IF OBJECT_ID('tempDB..#myTempName','U') IS NOT NULL 
    drop table #myTempName 

臨時表中tempDB創建的,不是什麼DB您當前使用的默認數據庫。

+0

我得到'消息3701,級別11,狀態5,2號線 無法刪除表 'yarpas',因爲它不存在或者您沒有權限。' – Fosna

+0

不適用於Azure SQL數據庫。 – Fosna