4

INFORMATION_SCHEMA.columns ビューと同様に、一時テーブルの列のリストを取得したいと考えています。ただし、このコード:

select * 
from   tempdb.INFORMATION_SCHEMA.columns
where  TABLE_CATALOG = 'tempdb'
and    TABLE_NAME like '#myTemporaryTable%'

列ごと、セッションごとに 1 行を返します。これを行うのは安全ですか:

select distinct column_name,data_type 
from   tempdb.INFORMATION_SCHEMA.columns
where  TABLE_CATALOG = 'tempdb'
and    TABLE_NAME like '#myTemporaryTable%'

myTemporaryTable と myTemporaryTable2 に一致しないように like 句を締めても、そうではない気がします。

4

1 に答える 1

6

tempdb のクエリが本当に必要な場合は、object_id を使用します。

SELECT  *
FROM    tempdb.sys.columns 
WHERE object_id = OBJECT_ID('tempdb..#myTemporaryTable')
于 2013-05-01T17:16:07.940 に答える