Apakah benar melakukan hal berikut?
IF EXISTS(SELECT * FROM dbo.Scores) DROP TABLE dbo.Scores
Tidak. Itu akan menjatuhkan tabel hanya jika berisi baris apa pun (dan akan menimbulkan kesalahan jika tabel tidak ada).
Sebagai gantinya, untuk tabel permanen Anda dapat menggunakan
IF OBJECT_ID('dbo.Scores', 'U') IS NOT NULL
DROP TABLE dbo.Scores;
Atau, untuk tabel sementara Anda dapat menggunakan
IF OBJECT_ID('tempdb.dbo.#TempTableName', 'U') IS NOT NULL
DROP TABLE #TempTableName;
SQL Server 2016+ memiliki cara yang lebih baik, menggunakan DROP TABLE IF EXISTS …
. Lihat jawabannya oleh @Jovan.