#
SQL Server では、 「ローカル一時テーブル」を意味するテーブルを作成し、 ##
「グローバル一時テーブル」を意味することを知っています。
しかし、以下のようなテーブルを作成すると:
create table ###MyTable(IntColumn int, ValueColumn varchar(100))
このテーブルはローカルまたはグローバルの一時テーブルですか? どうすればテストできますか?私がそれをしようとしたときselect
:
Select * from #MyTable -- SQL said it doesn't exists
Select * from ##MyTable -- SQL said it doesn't exists
Select * from ###MyTable -- I get the output
3番目のケースが当てはまる場合、これは という名前の一般的なテーブルではない###MyTable
でしょうか? このテーブルは、他のすべての物理テーブルと同様に、SSMS テーブル エクスプローラーに表示されませんか?
テーブル名の前に複数の # (ハッシュ) を追加するとどうなりますか?