in

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: in

Re: in

von hol.sten » Sa, 05.06.2010 20:05

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.

Re: in

von DPunch » Sa, 05.06.2010 14:38

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.

Re: in

von hol.sten » Sa, 05.06.2010 10:19

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...

Re: in

von DPunch » Sa, 05.06.2010 00:42

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").

Re: in

von hol.sten » Fr, 04.06.2010 20:58

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)

Re: in

von DPunch » Fr, 04.06.2010 18:29

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.

Re: in

von AndreasJBittner » Fr, 04.06.2010 18:03

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

Re: in

von AndreasJBittner » Fr, 04.06.2010 17:14

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

Re: in

von AndreasJBittner » Fr, 04.06.2010 14:38

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

Nach oben