sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan dropper man en tabel, hvis den eksisterer?

Er det korrekt at gøre følgende?

IF EXISTS(SELECT *
          FROM   dbo.Scores)
  DROP TABLE dbo.Scores

Nej. Det vil kun slette tabellen, hvis den indeholder rækker (og vil give en fejl, hvis tabellen ikke eksisterer).

I stedet kan du bruge et permanent bord

IF OBJECT_ID('dbo.Scores', 'U') IS NOT NULL 
  DROP TABLE dbo.Scores; 

Eller til en midlertidig tabel kan du bruge

IF OBJECT_ID('tempdb.dbo.#TempTableName', 'U') IS NOT NULL
  DROP TABLE #TempTableName; 

SQL Server 2016+ har en bedre måde ved at bruge DROP TABLE IF EXISTS … . Se svaret af @Jovan.



  1. Hvordan fjerner man alle MySQL-tabeller fra kommandolinjen uden DROP-databasetilladelser?

  2. Deltag i Alias ​​Columns SQL

  3. Hvordan kan jeg sætte en database under git (versionskontrol)?

  4. Hvordan får man UTF-8 til at fungere i Java webapps?