SQL Serverに接続している(同一セッション内の)間だけ有効なテーブルを、一時テーブルという。
今回は、SQL Serverで一時テーブルを作成し利用してみたので、その手順とSQLを共有する。
前提条件
下記記事の「前提条件」の内容が完了していること。

Spring BootでSQL Serverに接続しMyBatisを利用してみた今回は、Spring Bootアプリケーションで接続するデータベースをSQL Serverに変更してみたので、そのサンプルプログラムを共...
また、A5M2からSQL Serverに接続できていること。その手順は、以下の記事を参考にすること。

A5M2を利用して各DBに接続してみたA5M2(A5:SQL Mk-2)は、SQL文の入力支援やER図作成などの機能を備えていて、Oracle、MySQL、PostgreSQ...
一時テーブルの操作
SQL Serverで、テーブル名が”#”で始まるテーブルを作成すると、一時テーブルになる。一時テーブルの作成・データ追加・データ確認・一時テーブル削除の操作を確認した結果は、以下の通り。
1) 一時テーブルを作成する。
CREATE TABLE #tmpName ( name NVARCHAR(40) )

2) 一時テーブルにレコードを追加する。
INSERT INTO #tmpName ( name ) VALUES ( N'テスト プリン1') , ( N'テスト プリン2') , ( N'テスト プリン3')

3) 以下のように、一時テーブルに追加されたレコードを確認することができる。
SELECT * FROM #tmpName


4) データベースに切断し再接続すると、先ほど作成した一時テーブルが削除されていることが確認できる。
再接続後一時テーブルの中身を確認すると、一時テーブル(#tmpName)が削除されていることが確認できる。
5) 一時テーブルは、以下のように、DROP TABLE文で明示的に削除することもできる。
DROP TABLE #tmpName


「Envader」はLinuxコマンドやDatabase SQL等のスキルを、環境構築不要で習得できる学習サイトだった「Envader」は、ITエンジニアとしてよく使うLinuxコマンドやDatabase SQL等のスキルを、解説を読んだ上で、問題を解き...
一時テーブルの一括操作
一時テーブルの作成・データ追加・データ確認・一時テーブル削除の処理を一括で実行するプログラム(tmp_tbl_operation.sql)の内容は、以下の通り。
CREATE TABLE #tmpName ( name NVARCHAR(40) ); INSERT INTO #tmpName ( name ) VALUES ( N'テスト プリン1') ,( N'テスト プリン2') ,( N'テスト プリン3'); SELECT * FROM #tmpName; DROP TABLE #tmpName;
上記SQLを実行した結果は以下の通りで、一時テーブルに追加したレコードが表示されることが確認できる。
要点まとめ
- SQL Serverに接続している(同一セッション内の)間だけ有効なテーブルを、一時テーブルという。
- SQL Serverで、テーブル名が”#”で始まるテーブルを作成すると、一時テーブルになる。