Erweiterte INSERT
-
Ich habe ein Problem mit einer INSERT-Anweisung, die sich wohl erweiterte INSERT-Anweisung nennt (soweit ich rauskriegen konnte). Generiert werden solche Anweisungen von phpMyAdmin und MySQL komt damit ohne weiteres zurecht. DB2 v8 hatte damit auch keine Probleme. Nun baue ich allerdings auf PostgreSQL, der folgende Anweisung leider verweigert und sich mit einem Fehler verabschiedet:
INSERT INTO tabelle (spalte1, spalte2, spalte3) VALUES (zeile1_a, zeile1_b, zeile1_c), (zeile2_a, zeile2_b, zeile2_c), (zeile3_a, zeile3_b, zeile3_c);
Als Fehlermeldung wird in etwa ausgegeben:
ERROR: column "spalte1" is of type character varying but expression is of type record
TIP: You will need to rewrite or cast the expression.Sobald ich die SQ-Anweisung dahingehend abändere, das nur eine Zeile einzufügen ist, geht die Ausführung anstandslos von statten und es wird Erfolg zurückgegeben.
INSERT INTO tabelle (spalte1, spalte2, spalte3) VALUES (zeile1_a, zeile1_b, zeile1_c);
Ich möchte daher eigentlich nur wissen, ob es gültiges SQL ist, auf diese Weise mehrere Zeilen mit einer INSERT-Anweisung einzufügen?
-
Ist kein gültiges SQL (lt. SQL92).