4 Stimmen

MySQL 4 soll ALTER TABLE-Fehler ignorieren

Ich habe ein MySQL-Skript, das unter bestimmten Bedingungen automatisch ausgeführt wird. Dieses Skript führt ein ALTER TABLE Befehl, denn diese Spalte wird in der Datenbank benötigt, aber sie kann vorhanden sein oder auch nicht...

Ist es möglich, MySQL 4 dazu zu bringen, die ALTER TABLE Anweisung, wenn die Spalte nicht vorhanden ist, oder ignorieren Sie die Duplikatspalte Fehler für diesen einen Befehl und erlauben Sie die weitere Ausführung des Skripts?

3voto

mluebke Punkte 8100

ALTER [IGNORE] TABLE ignoriert nur bestimmte Fehler, wie z. B. Fehler bei doppelten Schlüsseln, wenn ein neuer UNIQUE-Index hinzugefügt wird, oder Fehler im SQL-Modus.

http://dev.mysql.com/doc/refman/4.1/en/alter-table.html

Genauere Angaben zu dem von Ihnen verwendeten "Skript" würden helfen, die Frage zu beantworten. In Python zum Beispiel würde der Fehler eine Ausnahme auslösen, die dann abgefangen und behandelt oder ignoriert werden könnte.

[EDIT] Aus dem Kommentar unten, scheint wie Sie für die mysql -f Kommandozeilenoption suchen.

0voto

Learning Punkte 7731

Sie können zunächst das Tabellenschema überprüfen, bevor Sie versuchen, die Spalte hinzuzufügen? Ich habe jedoch den starken Verdacht, dass Sie die Spalten im laufenden Betrieb hinzufügen müssen. Irgendetwas stimmt da nicht ganz. Können Sie die Anforderung ein wenig näher erläutern. Ich bin mir sicher, dass es andere, sauberere Wege gibt, dies zu umgehen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X