Zoeken…


Invoering

Het Drop-trefwoord kan worden gebruikt met verschillende SQL-objecten, dit onderwerp biedt snelle voorbeelden van verschillend gebruik met database-objecten.

Opmerkingen

Links naar MSDN.

Zet tafels neer

Met de opdracht DROP TABLE verwijdert u de tabeldefinities en alle gegevens, indexen, triggers, beperkingen en gerelateerde machtigingen.

Voordat u een tabel neerzet, moet u controleren of er objecten (weergaven, opgeslagen procedures, andere tabellen) zijn die naar de tabel verwijzen.

U kunt een tabel waarnaar wordt verwezen door een andere tabel niet verwijderen door FOREIGN KEY. U moet eerst de BUITENLANDSE SLEUTEL neerzetten die ernaar verwijst.

U kunt een tabel verwijderen waarnaar wordt verwezen door een weergave of opgeslagen procedure, maar nadat de tabel is verwijderd, kan de weergave of opgeslagen procedure niet meer worden gebruikt.

De syntaxis

DROP TABLE [ IF EXISTS ] [ database_name . [ schema_name ] . | schema_name . ]
table_name [ ,...n ] [ ; ]
  • IF EXISTS - Laat de tabel alleen vallen als deze bestaat
  • database_name - Geef de naam op van de database waarin de tabel zich bevindt
  • schema_name - Geef de naam op van het schema waar de tabel onder staat
  • table_name - Geef de naam op van de te verwijderen tabel

Voorbeelden

Verwijder de tabel met de naam TABLE_1 uit de huidige database en het standaard schema dbo

DROP TABLE Table_1;

Verwijder de tabel met TABLE_1 uit database HR en standaard schema dbo

DROP TABLE HR.Table_1;

Verwijder de tabel met TABLE_1 uit database HR en extern schema

DROP TABLE HR.external.TABLE_1;

Drop Databases

Met de opdracht DROP DATABASE wordt een databasecatalogus, ongeacht de status ervan (offline, alleen-lezen, verdacht, enz.) Uit de huidige SQL Server-instantie verwijderd.

Een database kan niet worden verwijderd als er database-snapshots aan zijn gekoppeld, omdat de database-snapshots eerst moeten worden verwijderd.

Een database-drop verwijdert alle fysieke schijfbestanden (tenzij deze offline zijn) die door de database worden gebruikt, tenzij u de opgeslagen procedure 'sp_detach_db' gebruikt.

Een database snapshot drop verwijdert de snapshot uit de SQL Server-instantie en verwijdert de fysieke bestanden die ook door de instantie worden gebruikt.

Een verwijderde database kan alleen opnieuw worden gemaakt door een back-up te herstellen (ook niet vanuit een momentopname van de database).

De syntaxis

DROP DATABASE [ IF EXISTS ] { database_name | database_snapshot_name } [ ,...n ] [;]  
  • IF EXISTS - Laat de tabel alleen vallen als deze bestaat
  • database_name - Specificeert de naam van de te verwijderen database
  • database_snapshot_name - specificeert de te verwijderen database-snapshot

Voorbeelden

Verwijder een enkele database;

DROP DATABASE Database1;

Meerdere databases verwijderen

DROP DATABASE Database1, Database2;

Een momentopname verwijderen

DROP DATABASE Database1_snapshot17;

Verwijderen als database bestaat

DROP DATABASE IF EXISTS Database1;

Drop tijdelijke tabellen

In SQL server hebben we 2 soorten tijdelijke tabellen:

  1. ##GlobalTempTable is een type tijdelijke tabel die tussen alle gebruikerssessies wordt geschoven.
  2. #LocalTempTable temp tab - het is een type tijdelijke tabel die alleen bestaat in het huidige bereik (alleen in het werkelijke proces - u kunt een ID van uw huidige proces krijgen door SELECT @@SPID )

Het neerzetten van tijdelijke tabellen is hetzelfde als voor normale tabellen:

DROP TABLE [ database_name . [ schema_name ] . | schema_name . ] table_name   

VOOR SQL Server 2016:

IF(OBJECT_ID('tempdb..#TempTable') is not null)
    DROP TABLE #TempTable;

SQL Server 2016:

DROP TABLE IF EXISTS #TempTable


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow