Hallo Leo,
hmm, nur ein paar kurze Bemerkungen (ich glaube, die Gesamtproblematik
ist komplexer und ohne den kompletten Code zu kennen kaum lösbar...)
Zu den Fehlern:
1. In Zahlen-Felder, die in der Ursprungstabelle keine Einträge
enthalten, wird in die Zieltabelle immer die Zahl 0 (Null) importiert.
Tia, das hängt doch von deinen Variablen ab. Wenn in der DB ein
Zahlenfeld definiert wird, steht dort immer eine Zahl drin oder eben
(Null) nichts. wenn Du das ausliest mit getLong() wird immer ein
Longwert zurückgeliefert - also bei leeren Feldern eine 0. Eine
Longvariabel in Basic kann den Wert "nichts" nicht annehmen.
hier müsstest Du nicht den LongWert abfragen, sondern den Stringwert
(getString) - der liefert Dir entweder den Wert als String(Text) oder
eben einen leeren String.
Das kannst Du auch problemlos der DB wieder zuweisen - ist das DB Feld
als Zahlwert definiert (long oder integer) so wird ein String passen
umgewandelt - und ein leerer String wird zu "nichts";) (Vorausgesetzt,
dass ist in der DB Definition zulässig). Aber das machst Du ja sowieso
- du weist allen Feldern Strings zu (erkennbar an den einfachen
Hochzeichen).
Also: Viele Variablen und viele Möglichkeiten - aber so, wie das derzeit
im Code gelöst ist, wird es korrekterweise 0 ergeben:)
Beim Code fällt mir noch auf: Wahrscheinlich wäre die IGNORE Anweisung
sinnvoller, als zunächst abzufragen, ob die ID schon existiert. Bin mir
aber nicht sicher, ob die HSQLDB diese überhaupt unterstützt.
So weit erst einmal , viele Grüße
Thomas
Am 20.01.2020 um 14:16 schrieb Leo-Hubert Kappes:
Hallo Users,
ich habe eine Datenbank für die Imkerei als eingebettete HSQLDB in Base
erstellt.
[..ToFu entsorgt...]
--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.