AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen
Thema durchsuchen
Ansicht
Themen-Optionen

SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

Ein Thema von arnof · begonnen am 11. Aug 2014 · letzter Beitrag vom 19. Aug 2014
Antwort Antwort
arnof

Registriert seit: 25. Apr 2013
1.261 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

  Alt 11. Aug 2014, 11:17
Datenbank: SQLite • Version: 3.x • Zugriff über: XE6 DBX
Hallo,

z.Z. bin ich echt gezwungen EMBA Basching zu machen!

Der seit XE3 angebotene SQLite Treiber ist immer noch unfassbar und nur für die Mülltonne!

Alle Felder gibt der im TDataSet als TWideMemo zurück, egal welcher Datentype das auch sein mag.

Leute Leute schon seit 3 Hauptversionen so was anzubieten ist schon Mobbing für Entwickler 3.0

Hat jemand ein Tipp, geht Firedac besser ?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

  Alt 11. Aug 2014, 11:22
DbX ist seit der übernahme von AnyDac (jetzt FireDac) gestorben.
Da wird auch nix mehr kommen. Sehe DBX als BDE 2.0 an. Wird zwar noch Jahrelang mitgeliefert, aber nix mehr angepasst/gefixt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.199 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

  Alt 11. Aug 2014, 11:40
Ich bin in Sachen Datenbanken ein hoffnungsloser Fall, aber ich verstehe nicht ganz: Was ist zurückgeben: Ich hatte (als ich noch dbx genutzt hatte) eine SQLite-DB drin und mir auf dem Formular-Designer die DB einmal zur Entwurfszeit verbunden und dann einmal dieses "Alle Felder hinzufügen" gemacht. Jeglichen Text hatte er zwar immer als WIDEMEMO eingeschraubt und ich konnte zur Entwurfszeit in Dingen wie dem TDBGrid nichts mehr sehen, aber andere Typen hatte er richtig.

Soweit ich mich erinnern konnte war das XE4. Oder meinst du etwas anderes?

// Update:
Ich sehe aber auch grade: Was erwartest du denn genau? Bei mir werden INTEGER-Felder auch als TLargeIntField (oder so ähnlich)-Felder eingebunden. Sonst so ziemlich alles als TWideMemoField. Das finde ich eigentlich verständlich da SQLite doch auch nichts anderes kennt als
  1. NULL
  2. INTEGER
  3. REAL
  4. TEXT
  5. BLOB

Habe ich mich auch etwas mit herumgeärgert, einen Timestamp immer als String zu bekommen. Aber so ist das doch in SQLite nunmal, oder?

Geändert von Der schöne Günther (11. Aug 2014 um 12:17 Uhr)
  Mit Zitat antworten Zitat
arnof

Registriert seit: 25. Apr 2013
1.261 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

  Alt 11. Aug 2014, 12:16
ja jedes Feld ist vom Type ftWideMemo, diese zeigt er auf den ersten Blick richtig an. Mit Livebindings kann er aber keine Datumsfelder befüllen! Deshalb habe ich mal genauer geschaut. Die Datenbank ist mit diesem Treiber so, wie wenn Sie ein Praktikant, der noch nie was von Datenbankdesign gehört hat angelegt hätte.

Sowas kann man keinen Kunden und noch nicht mal inhouse anbieten, nun bin ich wieder an dem Punkt, wo ich mit XE3 war. Man läßt es am besten einfach bleiben!

Das will ich aber nicht mehr, deshalb versuche ich nun FireDac, mal schauen was für Bugs mich da nerven!
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.199 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

  Alt 11. Aug 2014, 12:19
Ich habe grade nochmal auf ein Datenmodul geschaut dass ich erst mit DBX gemacht hatte und später dann mal komplett gegen FireDAC getauscht hatte. Die DBX-Komponenten sind noch drauf.

Die DBX-Felder sind tatsächlich alle WideMemo, FireDAC war so schlau und gleich überall TimeStamp-Felder, Booleans und AutoIncs erkannt. Nicht übel.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: SQLite Treiber dbx Emba XE6 SP1 immer noch nicht zu gebrauchen

  Alt 11. Aug 2014, 15:40
Da jedes Datenbank-System sein eigenes Süppchen kocht (Datum, Boolean, Texte, etc.) und auch die Verbindungen das immer etwas anders interpretieren, würde ich empfehlen die Anwendungs- bzw. UI-Schicht nicht direkt mit der Datenbank zu verbinden.

"Einfach" die Daten für die Anwendungs-Schicht in Klassen (Model) zusammenfassen, für die UI-Schicht anderen Klassen (ViewModel) und für den Austausch mit der Daten-Schicht ein DTO (DataTransferObjekt) inkl. Assembler (Model <-> DTO).

Ist zugegebenermassen mehr Aufwand als einfach eine Query hinklatschen und mit LiveBinding zu verbinden, dafür hat man aber alles in der Hand und jede Menge Spielraum für die Implementierung ohne sich ständig ins Knie zu schießen.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz