Apakah perlu digunakan #
sebelum membuat tabel sementara di SQL server?
Contoh:
SELECT column1, column2, someInt, someVarChar
INTO ItemBack1
FROM table2
WHERE table2.ID = 7
Untuk ItemBack1 apakah perlu menggunakan #
simbol?
Jika tidak, lalu apa gunanya #
membuat tabel temp?
Jawaban:
Iya. Anda perlu mengawali nama tabel dengan "#" (hash) untuk membuat tabel sementara.
Jika Anda TIDAK membutuhkan tabel nanti, lanjutkan & buat tabel tersebut. Tabel Sementara sangat mirip dengan tabel biasa. Namun, itu dibuat di tempdb. Juga, ini hanya dapat diakses melalui sesi saat ini yaitu Untuk EG: jika pengguna lain mencoba mengakses tabel temp yang dibuat oleh Anda, dia tidak akan dapat melakukannya.
"##" (hash ganda membuat tabel temp "Global" yang juga dapat diakses oleh sesi lain.
Lihat tautan di bawah ini untuk Dasar-dasar Tabel Sementara: http://www.codeproject.com/Articles/42553/Quick-Overview-Temporary-Tables-in-SQL-Server-2005
Jika konten tabel Anda kurang dari 5000 baris & TIDAK berisi tipe data seperti nvarchar (MAX), varbinary (MAX), pertimbangkan untuk menggunakan Variabel Tabel.
Mereka adalah yang tercepat karena sama seperti variabel lain yang disimpan di RAM.Mereka juga disimpan di tempdb, bukan di RAM .DECLARE @ItemBack1 TABLE ( column1 int, column2 int, someInt int, someVarChar nvarchar(50) ); INSERT INTO @ItemBack1 SELECT column1, column2, someInt, someVarChar FROM table2 WHERE table2.ID = 7;
Info Lebih Lanjut tentang Variabel Tabel: http://odetocode.com/articles/365.aspx
sumber
Perbedaan antara dua tabel ini
ItemBack1
dan tabel#ItemBack1
pertama bersifat persisten (permanen) sedangkan tabel lainnya bersifat sementara.Sekarang jika lihat pertanyaan Anda lagi
Jawabannya adalah Ya , karena tanpa ini sebelumnya
#
tabel tidak akan menjadi tabel sementara, itu akan independen dari semua sesi dan cakupan.sumber