2016-05-17 9 views
1
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your 
MariaDB server version for the right syntax to use near ') VIRTUAL, 
    `title_type` VARCHAR(45) NULL DEFAULT null, 
    PRIMARY KEY (`id`))' at line 2 

Hier ist ein Teil des Skripts:# 1064, xammp, phpMyAdmin, MYSQL - Warum habe ich einen Fehler in der mySQL-Syntax?

CREATE TABLE IF NOT EXISTS `sggis`.`maps_type` (
    `id` INT GENERATED ALWAYS AS() VIRTUAL, 
    `title_type` VARCHAR(45) NULL DEFAULT 'yandex', 
    PRIMARY KEY (`id`)) 
ENGINE = InnoDB; 

SQL sagt, dass Problem in der 2. Zeile ist, aber ich kann es nicht finden. Von MySQL Workbench generierter Code.

Antwort

0

Wenn VIRTUAL Spalten verwenden, müssen Sie den Ausdruck

juristischen, deterministischen Ausdruck zu spezifizieren, die berechnet werden können erlaubt ist, mit folgenden Ausnahmen:

Ihr Ausdruck ist leer.

+0

Ich bin Neuling in MySQL und löste Probleme mit Workbench, ohne Code. Könnten Sie ein Beispiel zeigen? expressiom ... Smth mag .. huh ... "id + 1" vielleicht? :) –

+0

gut nur mit 1 sollte ausreichen für ein minimales Beispiel – e4c5

+0

Also habe ich "# 1904 - Key/Index kann nicht auf eine nicht gespeicherte berechnete Spalte definiert werden" –