Wie kann ich sqlalchemy informieren, einen Fehler zu melden, wenn MySQL eine Warnung ausgibt?

8

Ich möchte die Einstellungen von sqlalchemy ändern, um eine Ausnahme bei Warnungen auszulösen.

Wenn ich zum Beispiel eine größere Datenmenge in ein Feld als die definierte Spaltenlänge einfüge, schneidet mysql die Daten ab, fügt die abgeschnittenen Daten in das Feld ein und gibt eine Warnung aus.

Anstelle der Warnung möchte ich, dass sqlalchemy einen geeigneten Fehler im Namen von mysql aufruft.

    
shahjapan 08.11.2011, 09:38
quelle

1 Antwort

5

Um die Warnungen "oh, wie ich Ihre Daten vermasselt habe" in Fehler zu verwandeln, Legen Sie einen geeigneten Server-Modus für MySQL fest. Mit SQLAlchemy sollten Sie ANSI wählen, da Sie sich wahrscheinlich keine Sorgen machen müssen, dass Ihre alten Abfragen mit einem fehlerhaften MySQL-spezifischen Verhalten kompatibel sind.

Sehen Sie sich die SQLAlchemy-Dokumentation zur Vorgehensweise an.

(Denken Sie auch daran, eine Datenbank zu verwenden, die standardmäßig strikt ist. Postgres kommt Ihnen in den Sinn.)

    
Petr Viktorin 08.11.2011, 10:23
quelle