Maksud dari tabel sementara adalah bahwa mereka .. sementara. Begitu mereka keluar dari ruang lingkup
- #temp buat di proc tersimpan :proc tersimpan keluar
- #temp dibuat dalam sesi :sesi terputus
- ##temp :sesi yang membuatnya terputus
Kueri menghilang. Jika Anda merasa perlu menghapus tabel sementara secara manual, Anda perlu meninjau kembali cara Anda menggunakannya.
Untuk yang global, ini akan menghasilkan dan mengeksekusi pernyataan untuk menghapus semuanya.
declare @sql nvarchar(max)
select @sql = isnull(@sql+';', '') + 'drop table ' + quotename(name)
from tempdb..sysobjects
where name like '##%'
exec (@sql)
Ini adalah ide yang buruk untuk menjatuhkan tabel temp [global] sesi lain.
Untuk lokal (ke sesi ini ) tabel sementara, cukup putuskan sambungan dan sambungkan kembali.