MySQL DROP TABLE (Svenska)

posted in: Articles | 0

sammanfattning: i den här handledningen lär du dig hur du använder MySQLDROP TABLE – uttalandet för att släppa en tabell från databasen.

MySQL DROP TABLE statement syntax

för att ta bort befintliga tabeller använder du MySQLDROP TABLE – satsen.

här är den grundläggande syntaxen för DROP TABLE – satsen:

Code language: SQL (Structured Query Language) (sql)

DROP TABLE tar bort en tabell och dess data permanent från databasen., I MySQL kan du också ta bort flera tabeller med en endaDROP TABLE – sats, varje tabell separeras med ett kommatecken (,).

alternativetTEMPORARY låter dig bara ta bort tillfälliga tabeller. Det säkerställer att du inte av misstag tar bort icke-tillfälliga tabeller.

alternativetIF EXISTS släpper villkorligt en tabell endast om den finns. Om du släpper en icke-befintlig tabell med IF EXISTS – alternativet genererar MySQL en anteckning som kan hämtas med SHOW WARNINGS – satsen.,

Observera attDROP TABLE – satsen bara droppar tabeller. Det tar inte bort specifika användarrättigheter som är associerade med tabellerna. Därför, om du skapar en tabell med samma namn som den tappade, kommer MySQL att tillämpa befintliga privilegier till den nya tabellen, vilket kan utgöra en säkerhetsrisk.

alternativenRESTRICT ochCASCADE är reserverade för framtida versioner av MySQL.

för att utföraDROP TABLE – satsen måste du haDROP – behörigheten för tabellen som du vill ta bort.,

MySQL DROP TABLE exempel

låt oss ta några exempel på att användaDROP TABLE uttalande.,3b2a0bf834″>

alternativet i DROP TABLE uttalande:

Code language: SQL (Structured Query Language) (sql)

MySQL utfärdade en varning istället:

Code language: SQL (Structured Query Language) (sql)

för att visa varningen kan du använda SHOW WARNINGS uttalande:

Code language: SQL (Structured Query Language) (sql)

MySQL drop table baserat på ett mönster

anta att du har många tabeller vars namn börjar med test I din databas och du vill ta bort dem alla med en enda test div id = ”4e3772c7ed” >

uttalande.,

tyvärr har MySQL inte uttalandetDROP TABLE LIKE som kan ta bort tabeller baserat på mönstermatchning:

Code language: JavaScript (javascript)

det finns dock vissa lösningar. Vi kommer att diskutera en av dem här för din referens.

först, skapa tre tabellertest1,test2,test4 för demonstration:

Code language: SQL (Structured Query Language) (sql)

anta att du vill ta bort allatest* tabeller.,

För det andra, deklarera två variabler som accepterar databasschema och ett mönster som du vill att tabellerna ska matcha:

Code language: CSS (css)

För det tredje, konstruera en dynamisk DROP TABLE uttalande:

i grund och botten instruerar frågan MySQL att gå till tabellen information_schema , som innehåller information om alla tabeller i alla databaser, och att sammanfoga alla tabeller i databasen @schema ( classicmodels ) som matchar mönstret @pattern ( test% ) med prefixet DROP TABLE ., FunktionenGROUP_CONCAT skapar en kommaseparerad lista med tabeller.

fjärde, visa dynamisk SQL för att verifiera om den fungerar korrekt:

Code language: SQL (Structured Query Language) (sql)

som du kan se är utgången vad vi förväntade oss.

för det femte, kör uttalandet med ett förberett uttalande som visas i följande fråga:

Code language: SQL (Structured Query Language) (sql)

sätta ihop allt.,

Så om du vill släppa flera tabeller som har ett specifikt mönster i en databas, använder du bara skriptet ovan för att spara tid. Allt du behöver göra är att ersätta mönstret och databasschemat i @pattern och @schema variabler. Om du ofta måste hantera den här uppgiften kan du utveckla en lagrad procedur baserad på skriptet och återanvända den lagrade proceduren.

i den här guiden har du lärt dig hur du använder MySQL DROP TABLE uttalande för att ta bort befintliga tabeller från en databas.

  • var den här handledningen till hjälp?,
  • YesNo

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *