MySQL-Fehlerbehandlungsmethode: 1. Wenn ein 1062-Fehler auftritt, führen Sie die SELECT-Anweisung aus. 2. Wenn die SQL-Select-Anweisung keinen Wert zurückgibt, setzen Sie [l_done=1] und fahren Sie mit der Ausführung fort Generieren einer Fehlermeldung oder einer gespeicherten Prozedur. 4. Wenn ein Fehler auftritt, setzen Sie [l_error] auf 1 und führen Sie es dann aus.
MySQL-Fehlerbehandlungsmethode:
1. Wenn ein Fehler auftritt (nicht NICHT GEFUNDEN), setzen Sie l_error auf 1 und fahren Sie mit der Ausführung fort:
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET l_error=1;
2. Verlässt den aktuellen Block oder die gespeicherte Prozedur, nachdem ROLLBACK ausgeführt und eine Fehlermeldung generiert wurde.
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN ROLLBACK; SELECT 'Error occurred – terminating'; END;
3. Wenn ein MySQL 1062-Fehler (doppelter Schlüsselwert) auftritt, führen Sie die SELECT-Anweisung aus (senden Sie eine Nachricht an das aufrufende Programm) und fahren Sie dann mit der Ausführung fort
DECLARE CONTINUE HANDER FOR 1062 SELECT 'Duplicate key in index';
4. Wenn ein SQLSTATE 2300-Fehler (doppelter Schlüsselwert) auftritt , führen Sie die SELECT-Anweisung aus (sendet eine Nachricht an das aufrufende Programm) und setzen Sie die Ausführung fort Beispiel: Die SQLSTATE-Variable wird anstelle der benannten Bedingung verwendet. Ansonsten ist es dasselbe wie im vorherigen Beispiel
DECLARE CONTINUE HANDER FOR SQLSTATE '23000' SELECT 'Duplicate key in index';
7. Dieses Beispiel ist dasselbe wie die beiden vorherigen Beispiele, außer dass es MySQL-Fehlercodevariablen anstelle der benannten verwendet Bedingungen oder SQLSTATE-Variablen
DECLARE CONTINUE HANDLER FOR NOT FOUND SET l_done=1;
Weitere verwandte kostenlose Lernempfehlungen:
MySQL-Tutorial(Video)
Das obige ist der detaillierte Inhalt vonSo behandeln Sie einen Fehler in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!