Ich benutze SQLite DB Browser v3.7.0. Wenn ich eine Tabelle mit folgenden Syntax zu erstellen:SQLite Check Constraints und SQLite DB Browser
CREATE TABLE "A" (
"AREA" TEXT NOT NULL DEFAULT 'DEFAULT'
CONSTRAINT "A-AREA-MAX_LENGTH_CHECK"
CHECK(LENGTH("AREA") <= 25),
CONSTRAINT "A-AREA-UPPERCASE_NO_WHITESPACE_CHECK"
CHECK(UPPER("AREA") = "AREA" AND INSTR("AREA", ' ') = 0)
);
Als ich in dem „Daten durchsuchen“ Registerkarte SQLite Browser gehen, bekomme ich keine Spalten zeigen sich (als ob der Browser nicht in der Lage ist, die SQL zu analysieren). Dies ist ein Problem, da, wenn ich auf "Neuer Datensatz" klicke, bekomme ich die Ausnahme "Fehler beim Hinzufügen von Datensatz: in der Nähe von ") ": Syntaxfehler (INSERT INTO '' VALUES();)".
Wenn ich jedoch die Einschränkung ändern entweder von sein:
CHECK(UPPER("AREA") = "AREA")
CHECK(INSTR("AREA", ' ') = 0)
Dann SQLite DB Browser erscheint alles richtig zu analysieren. Meine Frage ist, ist die Syntax oben ungültige SQLite, oder ist das ein Problem, das an das SQLite DB Browser-Team gemeldet werden muss? Vielen Dank.
EDIT
ich auch in SQLite DB Browser v3.8.0 getestet, mit ähnlichen Ergebnissen: