2017-09-01 3 views
0

以下のように使用するSQL文がなく、2014年のSQL Serverで、以前のバージョンで動作するように:は、一時テーブルを発見しなかった場合、SQL Serverの出口2014

試み#1:

IF object_id('[#TemptableName]') IS NOT NULL 
    SELECT * FROM #TemptableName 
ELSE 
    PRINT 'NOT FOUND' 
GO 

試行# 2:

IF OBJECT_ID (N'#TemptableName', N'U') IS NOT NULL 
    SELECT * FROM #TemptableName 
ELSE 
    PRINT 'NOT FOUND' 

私はこれを発見しました - どのようなアイデアですか?一時テーブル名を指定すると、現在のデータベースがtempdbのでない限り、

+1

、データベース名は、一時テーブル名の前に来なければなりません。次に例を示します。SELECT OBJECT_ID( 'tempdb ..#mytemptable')。 – TheGameiswar

+1

私が奇妙なことは、あなたがどのように/なぜそれがうまくいかないのか説明していないということです。エラーまたは予期しない結果? –

+0

一時テーブルはtempdb.sys.tablesに格納されます。この表のplsのチェック – Prafulla

答えて

1

はこのようにそれを試してみてください...

IF OBJECT_ID('tempdb..#TemptableName', 'U') IS NOT NULL 
0
IF OBJECT_ID('tempdb..#TemptableName') IS NOT NULL 
    SELECT * FROM #TemptableName 
ELSE 
    PRINT 'NOT FOUND' 
GO 
関連する問題