Tabel sementara lokal (mulai dengan #) terbatas pada sesi Anda; sesi lain, bahkan dari pengguna/string koneksi yang sama, tidak dapat melihatnya. Aturan seumur hidup bergantung pada apakah tabel sementara lokal dibuat dalam prosedur tersimpan:
- Tabel sementara lokal yang dibuat dalam prosedur tersimpan akan dihapus saat prosedur berakhir; prosedur tersimpan lainnya, atau proses pemanggilan, tidak dapat melihatnya.
- Tabel sementara lokal lainnya akan dihapus saat sesi berakhir.
Tabel sementara global (mulai dengan ##) dibagikan di antara sesi. Mereka dijatuhkan ketika:
- Sesi yang membuatnya berakhir
- DAN tidak ada sesi lain yang merujuk pada mereka
Perintah ini berguna untuk melihat tabel sementara yang ada:
select TABLE_NAME from tempdb.information_schema.tables
Dan ini berguna untuk menghapus tabel sementara jika Anda tidak yakin tabel tersebut ada:
if object_id('tempdb..#SoTest') is not null drop table #SoTest
Lihat artikel MSDN ini untuk informasi lebih lanjut.