Hvis du bruger en database for længe nok , vil du sandsynligvis løbe ind i en situation, hvor du ønsker at droppe en tabel, hvis den findes. Ofte grunden , du ønsker at gøre dette er fordi du har brug for at oprette en tabel , og du ikke ønsker at løbe ind i en fejl, når du forsøger at oprette det, fordi en tabel med det navn eksisterer allerede , men ønsker ikke at støde på en fejl, når du slipper det, fordi det ikke eksisterer. Uanset hvad dine motiver kan være , det er hvordan du kan slippe en tabel, hvis ( og kun hvis) den allerede findes i MySQL , MS SQL og Oracle. Ting du skal
Oracle, MySQL, eller MS SQL Server
En tabel , du er kløe til at slippe af
Vis Flere Instruktioner
1
MySQL var så venlig nok til at gøre det meget ligetil at droppe en eksisterende tabel . At droppe desværre navngivne bord " Drop_Me « , kør følgende forespørgsel -
DROP TABLE IF EXISTS Drop_Me
2
MS SQL gør det lidt sværere at droppe en tabel, hvis det findes . For at opnå dette, vil du nødt til at bruge en HVIS-sætning , og EXISTS funktion -
IF EXISTS ( SELECT 1 FROM sys.objects WHERE OBJECT_ID = OBJECT_ID ( N'Drop_Me ' ) og type = ( N' U ' ) ) DROP tABLE Drop_Me
3
Oracle tager kompleksiteten af at droppe en tabel, hvis den eksisterer til det næste niveau . I dette stykke kodeeksempel , skal du kende ejeren af bordet, hvilket sker for at være "mig" -
DECLAREv_count NUMMER: = 0; BEGINSELECT COUNT (*) I v_count FROM all_tables WHERE table_name = ' Drop_Me ' og ejer =' Me ' , HVIS v_count = 1 THENEXECUTE umiddelbar " DROP TABLE Me.Drop_Me « END IF END ,