MSSQL veritabanında temp (geçici) tablolar tempdb ismindeki veritabanında tutulur. Bu yüzden kullandığınız veritabanın information schema tablosunda görülemeyecektir.
1 2 |
select CATALOG_NAME into ##temp from [tempdb].[INFORMATION_SCHEMA].[SCHEMATA]; SELECT * FROM INFORMATION_SCHEMA.TABLES where table_name like '%##temp%' |
ilk satır ##temp tablonuzu açar , ikinci satırda ise tablonuzu kendi veritabanınızda aradığınız için bulamazsınız. Çözüm :
1 2 3 4 5 6 7 8 9 |
SELECT OBJECT_ID('tempdb..##temp') IF OBJECT_ID('tempdb..##temp') Is NOT NULL begin drop table ##temp end |
Yukarıdaki gibi object_Id fonksiyonu ile tempdb içinde arama yapmalısınız. Not : tempdb..##temp yazımında TEK NOKTA ile çalışmadığına dikkat ediniz. […]
Son yorumlar