Fragen zu SQLITE

27/09/2011 - 08:22 von W. Wolf | Report spam
Guten Morgen,

habe für kleine Anwendungen bisher Access verwendet. Möchte mich nun neu
an SQLITE orientieren. Olaf hat ja vieles selbsterklàrend im RC3 und 4
umgesetzt. Manches ist auch aus seinen Beispielen gut nachvollziehbar,
zu anderen Sachen hàtte noch ein paar Fragen. Bitte die Fragen auch im
Kontext zu RC4 verstehen.

- Verwendet außer Olaf hier diese DB noch jemand?
- Ist SQLITE auch in (kleinen) Mehrbenutzerumgebungen bedenkenlos
einsetzbar?
- Wie ist am besten mit der Verbindung zur Datenbank umzugehen? DB offen
halten oder für jeden Zugriff neu öffnen?
- Was sind die relevanten Unterschiede zu DAO bzw. ADO?
- Habe hier bei ersten Tests ordentliche Performance beim Lesen aus der
DB gehabt, andererseits kommt mir das Schreiben vergleichsweise zàh vor.
Ist das nur mein Empfinden? Mache alles ausschließlich über
SQL-Kommandos und verwende GUIDs als PKs.
- Was ist besser, die Klassischen SQL-Kommandos oder die Methoden
des Recordset-Objektes für Änderungen an der DB?
- Gute Seiten, Foren, Bücher oder Blogs & Co. zum Thema bekannt?


Schönen Gruß
W. Wolf
 

Lesen sie die antworten

#1 Dieter Strassner
27/09/2011 - 09:32 | Warnen spam
Hallo W.


habe für kleine Anwendungen bisher Access verwendet. Möchte mich nun
neu an SQLITE orientieren. Olaf hat ja vieles selbsterklàrend im RC3
und 4 umgesetzt. Manches ist auch aus seinen Beispielen gut
nachvollziehbar, zu anderen Sachen hàtte noch ein paar Fragen. Bitte
die Fragen auch im Kontext zu RC4 verstehen.

- Verwendet außer Olaf hier diese DB noch jemand?


habe mit SQLITE mal unsere Anwednung getestet. Lief einiges auf Anhieb,
anderes nicht so recht (unsere Anwendung wurde gegen MS-SQL-Server
entwicklet). Im Vgl. zum MS-SQL-Server im Einplatzbetrieb ist SQLITE rasend
schnell.


- Ist SQLITE auch in (kleinen) Mehrbenutzerumgebungen bedenkenlos
einsetzbar?


Und da komm ich zum Problem: Ich habe von SQLITE Abstand genommen, da es
damals nicht Transaktionsicher und auch nicht so stabil war.
Eine defekte DB braucht keiner meiner Kunden.

- Wie ist am besten mit der Verbindung zur Datenbank umzugehen? DB
offen halten oder für jeden Zugriff neu öffnen?



Aus meiner Sicht das beste & schnellste Szenario für SQLITE:
Ein RPC-Server bündelt alle DB-Zugriffe (von allen Clients) auf seinem
Prozess und wicklet das "im Alleingang" mit SQLITE ab.


- Was sind die relevanten Unterschiede zu DAO bzw. ADO?


Die Datenfelder! Es gibt z.B. kein Currency. Das war für mich ein weiteres
KO-Kriterium
Hàtte in der kompletten Anwednung bei allen Currency-feldZugriffen die Werte
in Cent umrechnen müssen. bei allen Weiteren Sachen wie einer Vorkalkulation
wàre viel Umstellungsaufwand und Testaufwand angefallen.


- Habe hier bei ersten Tests ordentliche Performance beim Lesen aus
der DB gehabt, andererseits kommt mir das Schreiben vergleichsweise
zàh vor. Ist das nur mein Empfinden? Mache alles ausschließlich über
SQL-Kommandos und verwende GUIDs als PKs.



Schreiben war deutlich zàher, hab ich auch In Erinnerung. Aber keine
Meßwerte mehr, nur Bauchgefühl.
Wir verwenden nur LONG-felder als PKs. Eine GUID in SQLITE ist kein Problem.
Denke mir aber, soweit ich das SQLITE-Konzept verstanden, habe: Jedes Byte
mehr in der Datenbank bringt den Punkt nàher, an dem die SQLITE-Perfomance
zu Gunsten des MS-SQL-Servers kippt. Vorallem bei PKs, Indexfeldern u.à. hat
SQLITE dann "zu knabbern".


- Was ist besser, die Klassischen SQL-Kommandos oder die Methoden
des Recordset-Objektes für Änderungen an der DB?

- Gute Seiten, Foren, Bücher oder Blogs & Co. zum Thema bekannt?



Würde vor allem Tests in Richtung stabile Anwendung machen.
Was helfen dem Kunden 5000 x 0,5 Sekunden schnellere Antwortzeiten, wenn
alle paar Tage die DB crashen sollte und es dadurch Ausfallzeiten geben
sollte.
Also nicht falsch verstehen: Nicht das ich das vermute, das es so passiert
wird. Ich habe die Tests relativ früh abgebrochen (Umbaukosten zu hoch für
den Nutzen). Unsere Anwendung làuft auch mit SQL-Express und die kostet
genausoviel wie SQLITE

Viele Grüße - Dieter

EDV-Kommunikation Strassner e.K.
68623 Lampertheim
Internet: www.strassner.biz

Ähnliche fragen