クライアントのデータベース管理者は、レポートストアドプロシージャ(#Table
)内で一時テーブルを使用せず、テーブル変数を使用するように要求しています。SQL Serverの一時テーブルとテーブル変数
テーブル変数の方が一時テーブルより効率が悪いですか? ##table
とは対照的に、私は、#table
としてテーブルを作成する場合は、右、グローバルで##
とは対照的に、また
、1 #
との1は、セッションテーブルは、ありますか? stored procedure
が完了し、DROP TABLE #table
を実行していない場合... #table
はまだ存在しますか?それがセッションベースの場合、私は再びそれにアクセスできますか?
注:表変数には統計はなく、トランザクションには参加しません。心に留めておくべきこと。 –
テーブル変数は常にメモリに格納されていますが、tempテーブルはtempdbに格納され、ディスクにヒットします。これらはどちらも厳密には真実ではありません(実際には両方ともtempdbに入っていますが、可能であれば両方がメモリに残っていて、必要に応じて両方ともディスクに書き込まれます) –
[SQL Serverの一時テーブルとテーブル変数の違いは? (http://stackoverflow.com/questions/27894/whats-the-difference-between-a-temp-table-and-table-variable-in-sql-server) – Makoto