2013-11-22 7 views
74

Ich bin ratlos, ich weiß nicht, wie man das macht.Wenn Tabelle existiert Drop-Tabelle dann erstellen Sie es, wenn es nicht existiert nur erstellen Sie es

Grundsätzlich möchte ich nur eine Tabelle erstellen, aber wenn es existiert, muss es gelöscht und neu erstellt werden, nicht abgeschnitten, aber wenn es nicht existiert, erstellen Sie es einfach.

Würde jemand helfen können?

Danke, George

+0

@Shomz, das ist, was sie wollten. Aber die Existenz dieser Frage und die 20k Ansichten auf dieser Seite beweisen, dass das so einfach ist wie das Konvertieren des Englischen ins Griechische. – Pacerier

+2

@Pacerier Konnte nicht zustimmen mehr: 'διαγραφή πίνακα, εφόσον υπάρχει'. – Shomz

+0

@Shomz, Es gibt einen Grammatikfehler. – Pacerier

Antwort

174

Setzen Sie einfach DROP TABLE IF EXISTS `tablename`; vor Ihre CREATE TABLE Anweisung.

Diese Anweisung löscht die Tabelle, wenn sie existiert, gibt aber keinen Fehler aus, wenn dies nicht der Fall ist.

+0

Danke! Dies funktioniert auch für eine Liste von Tabellen oder Ansichten! 'DROP TABLE IF EXISTS 'table1', 'table2';' und 'DROP VIEW WENN EXISTS 'view1', 'view2';' PS- Welche Hexerei hast du benutzt, um 's in Inline-Code zu haben? – Campbeln

+1

@Campbeln Verdopple einfach die Backticks vor und nach dem Code-Segment. Einzelne Backticks werden dann wörtlich angezeigt. –

26

Nur DROP TABLE IF EXISTS verwenden:

DROP TABLE IF EXISTS `foo`; 
CREATE TABLE `foo` (...); 

Versuchen Sie, die MySQL documentation erste Suche, wenn Sie andere Probleme haben.

Verwandte Themen