0

私はしばしばエラーを受け取ります:

Msg 208, Level 16, State 0, Line 1
Invalid object name '#foo'.

Msg 3701, Level 11, State 5, Line 1
Cannot drop the table '#foo', because it does not exist in the system catalog.

スコープ内にある一時テーブルを確認するにはどうすればよいですか? それらは明らかに、ベース テーブルのように SSMS に表示されません。

4

2 に答える 2

4

テーブルに対してクエリを実行する前に、テーブルが存在するかどうかを確認できます。

IF object_id('tempdb..#foo') IS NOT NULL 
于 2009-07-30T19:49:24.337 に答える
1

ブランドンの答えを拡大しています...

SSMS クエリ ウィンドウ 1:

CREATE TABLE #foo (bar int)
GO
CREATE TABLE ##bar (foo int)
GO
SELECT object_id('tempdb..#foo'), object_id('tempdb..##bar')
GO

ウィンドウ 2:

SELECT object_id('tempdb..#foo'), object_id('tempdb..##bar')

##bar予想どおり、両方のセッションで表示されます。#fooローカル セッションのみ。

于 2009-07-30T20:16:05.063 に答える