in

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: in

Beitrag von AndreasJBittner »

Hallo Sabine,

wenn WERTn eine Zahl ist darfst Du es nicht in 'einschließen' und ggf. mußt Du darauf achten, ob DezimalPUNKT oder -KOMMA richtig sind. Auch kannst Du
nach Values (1, wert1, 2, wert2, 3, wert3,...) weitermachen. (...), (...) geht offensichtlich nicht.

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: in

Beitrag von AndreasJBittner »

Hallo Sabine,

kann es sein, daß ID (int, autoincrement!, primary key) ist? Wenn die ID automatisch hochzählt, dann genügt ein

Code: Alles auswählen

INSERT INTO tblname (col_name_für_wert) VALUES ('wert1', 'wert2', 'wert3',....)
Vielleicht kommt Dein Base durcheinander, weil Du dem Autoincrement Werte zuordnen willst.
Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: in

Beitrag von AndreasJBittner »

Hallo Sabine,

wenn Du qualifiziertere Antworten willst mußt Du mehr verraten. Wie ist die Tabellendefinition? Ist es eine MySQL-DB über OOo oder eine reine OOo-DB? Bei letzterem geht dann nur SELECT und kein INSERT und bevor OOo merkt, daß Du ein INSERT machen willst, moppert es ein Komma an.

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: in

Beitrag von DPunch »

Aloha
Sabi hat geschrieben:erhalte ich die Fehlermeldung:

1: Unexpected token: , in statement [,]

Was ist denn an dem Statement falsch?
Bei einigen anderen DBMS wäre an dem Statement nichts falsch.
Die bei OOo integrierte HSQLDB unterstützt diesen Befehl (bzw diese Syntax zum Einfügen mehrerer Datensätze) allerdings nicht.

Dir wird wohl (so Du denn mit der OOo-DB weiterarbeiten willst) nichts anderes übrig bleiben, als die Zeilen einzeln hinzuzufügen.
hol.sten
******
Beiträge: 871
Registriert: Fr, 18.11.2005 21:21

Re: in

Beitrag von hol.sten »

DPunch hat geschrieben:Aloha
Sabi hat geschrieben:erhalte ich die Fehlermeldung:

1: Unexpected token: , in statement [,]

Was ist denn an dem Statement falsch?
Bei einigen anderen DBMS wäre an dem Statement nichts falsch.
Die bei OOo integrierte HSQLDB unterstützt diesen Befehl (bzw diese Syntax zum Einfügen mehrerer Datensätze) allerdings nicht.
Zumindest bei Nutzung der HSQLDB-Version die OOo 3.2.1 und älter mitbringt (auch bei OOo 3.2.1 ist es immer noch nur HSQLDB 1.8.0.10).
Laut der Release Notes zu HSQLDB 1.9 und 2.0 soll es dort das "neue" Feature für mehrfach Inserts geben: http://hsqldb.org/web/features190.html (Abschnitt NEW DATA MANIPULATION LANGUAGE FEATURES)
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: in

Beitrag von DPunch »

Aloha
hol.sten hat geschrieben:Zumindest bei Nutzung der HSQLDB-Version die OOo 3.2.1 und älter mitbringt (auch bei OOo 3.2.1 ist es immer noch nur HSQLDB 1.8.0.10).
Laut der Release Notes zu HSQLDB 1.9 und 2.0 soll es dort das "neue" Feature für mehrfach Inserts geben: http://hsqldb.org/web/features190.html (Abschnitt NEW DATA MANIPULATION LANGUAGE FEATURES)
Dabei darf man nicht vergessen, dass die in OOo integrierte HSQLDB-Version offensichtlich nur selten auch alle Features der "echten" HSQLDB-Version unterstützt.
Ob ausgerechnet dieses Feature in einer neuen Version integriert wird, muss sich erst herausstellen.
Gast hat geschrieben:Wäre schön, wenn dies bald unterstützt würde, denn diese Feature gibt es ja in SQL seit Jahrzehnten!
Nunja, seit Jahrzehnten ist wohl übertrieben (MS SQL Server z.B. unterstützt diese Syntax zumindest offiziell erst seit der 2008er Version, für die 2005er Version gab es wohl irgendwann eine Art inoffiziellen "Patch").
hol.sten
******
Beiträge: 871
Registriert: Fr, 18.11.2005 21:21

Re: in

Beitrag von hol.sten »

DPunch hat geschrieben:
hol.sten hat geschrieben:Zumindest bei Nutzung der HSQLDB-Version die OOo 3.2.1 und älter mitbringt (auch bei OOo 3.2.1 ist es immer noch nur HSQLDB 1.8.0.10).
Laut der Release Notes zu HSQLDB 1.9 und 2.0 soll es dort das "neue" Feature für mehrfach Inserts geben: http://hsqldb.org/web/features190.html (Abschnitt NEW DATA MANIPULATION LANGUAGE FEATURES)
Dabei darf man nicht vergessen, dass die in OOo integrierte HSQLDB-Version offensichtlich nur selten auch alle Features der "echten" HSQLDB-Version unterstützt.
Ob ausgerechnet dieses Feature in einer neuen Version integriert wird, muss sich erst herausstellen.
Warum sollte das Feature nicht dabei sein? OOo bringt jeweils ein hsqldb.jar mit, in der Version 3.2.1 ist es z. B. 1.8.0.10, wie man an dem Manifest des JARs erkennen kann. Wie soll da so ein Feature "ausgeklammert" werden, wenn OOo zukünftig mit einem hsqldb.jar z. B. der Version 2.0.0 daher kommt? Auf welche Features beziehst du dich mit deiner Behauptung? Was kann z. B. HSQLDB 1.8.0.10, was OOo mit dieser Version nicht kann?

Das es tatsächlich irgendwo Einschränkungen geben mag, will ich nicht abstreiten. Ich habe gestern auf die harte Tour versucht, einfach das von OOo mitgebrachte hsqldb.jar der Version 1.8.0.10 gegen ein aktuelleres hsqldb.jar der Version 2.0.0-rc9 auszutauschen. Leider gab es dann beim Öffnen einer ganz normalen neuen OOo Datenbank eine NullPointerException. Nach Austausch von hsqldb.jar konnte ich nur noch per selbst konfigurierter JDBC-Verbindung drauf zugreifen. Damit ist es mir dann aber tatsächlich gelungen, mich von dem Funktionieren von INSERT INTO table (col1,col2) VALUES (val1,val2),(val3,val4) zu überzeugen. Der Weg dahin erschien mir dann aber doch etwas umständlich...
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: in

Beitrag von DPunch »

Aloha
Sabi hat geschrieben:SQL gibt es tatsächlich schon seit Jahrzehnten! Don Chamberlin erfand es in den 70er Jahren zusammen mit Ray Boyce!
Damals gab es auch schon die ersten Implementierungen auf den Großrechnern.
Nun, wir reden ja nicht über SQL an sich, sondern diese ganz bestimmte Syntax zum einfügen mehrerer Zeilen.
Und zumindest die Implementierung dieser Syntax gibt es in den meisten DBMS (wenn denn überhaupt) noch nicht allzu lange.
hol.sten hat geschrieben:Auf welche Features beziehst du dich mit deiner Behauptung?
Konkrete Features kann ich aus dem Stehgreif nicht nennen, weil ich nur zu Anfangs kurz mit der HSQLDB gearbeitet habe.
Aber die Behauptung an sich stütze ich darauf, dass einige Syntax, die laut HSQL-Doku funktionieren sollten, bei einer Standard-Installation von OOo (3.1.1) unter Base mit HSQLDB nicht zu funktionieren scheinen.
Die Gründe dafür kann ich nicht beurteilen, und es mag durchaus sein, dass es möglicherweise nur irgendwelche Fehlenden Java-Klassen o.Ä. sind, die man schnell und unkompliziert nachinstallieren kann - jedenfalls ist mir das damals aufgefallen und hat damit dafür gesorgt, dass ich mich sehr schnell zu einer MySQL-DB entschlossen habe.
hol.sten
******
Beiträge: 871
Registriert: Fr, 18.11.2005 21:21

Re: in

Beitrag von hol.sten »

DPunch hat geschrieben:
hol.sten hat geschrieben:Auf welche Features beziehst du dich mit deiner Behauptung?
Konkrete Features kann ich aus dem Stehgreif nicht nennen, weil ich nur zu Anfangs kurz mit der HSQLDB gearbeitet habe.
Aber die Behauptung an sich stütze ich darauf, dass einige Syntax, die laut HSQL-Doku funktionieren sollten, bei einer Standard-Installation von OOo (3.1.1) unter Base mit HSQLDB nicht zu funktionieren scheinen. Die Gründe dafür kann ich nicht beurteilen
Wenn man sich darüber wundert, dass die HSQLDB-Doku nicht zum OOo HSQLDB passt, sollte man vielleicht mal ins Manifest des hsqldb.jar reinschauen und prüfen, ob die Version der HSQLDB-Doku zu der OOo Version von HSQLDB passt.
Antworten