AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

firebird nach sqlite

Ein Thema von khh · begonnen am 21. Jun 2012 · letzter Beitrag vom 25. Jun 2012
Antwort Antwort
Seite 1 von 3  1 23   
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#1

firebird nach sqlite

  Alt 21. Jun 2012, 13:09
Datenbank: firebird • Version: 2.1 • Zugriff über: zeos
Hallo zusammen,
ich möchte eine Light-Version unserer WAWI erstellen und dazu SQLite nutzen.
Hat jemand Erfahrung damit ne Firebird -db auf sqlite zu portieren.

Ich danke euch
Karl-Heinz
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#2

AW: firebird nach sqlite

  Alt 21. Jun 2012, 13:13
Wobei hast du denn Probleme?
Hat das einen bestimmten Grund, warum du SQLite nehmen willst?
Wenn du sowieso schon Firebird verwendest, dann würde ich an deiner Stelle einfach auf Embedded umstellen...
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#3

AW: firebird nach sqlite

  Alt 21. Jun 2012, 13:17
Wobei hast du denn Probleme?
Hat das einen bestimmten Grund, warum du SQLite nehmen willst?
Wenn du sowieso schon Firebird verwendest, dann würde ich an deiner Stelle einfach auf Embedded umstellen...
ich möchte die DB integrieren ohne ein separates Programm installieren zu müssen.
An embedded hab ich nicht gedacht, danke für den Tipp
Karl-Heinz
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#4

AW: firebird nach sqlite

  Alt 21. Jun 2012, 13:29
Zitat:
ich möchte die DB integrieren ohne ein separates Programm installieren zu müssen.
Genau dafür ist die Firebird embedded da

Die fbembed.dll musst du allerdings separat zu deiner EXE mitliefern. (ausser, du bindest sie in einer virtuellen Umgebung wie z.B. BoxedApp ein)

Ich würde auch zum FB embedded raten, er ist performanter als SQLite, unglaublich robust, hat eine fast vollständige SQL-92 Implementation und bietet im Gegensatz zur SQLite auch Stored Procedures.
Allerdings ist die DLL um einiges größer:
SQLite 3.7 DLL: 586kB
Firebird Embedded 2.5 DLL: 3.6MB

Ein Nachteil der FB embedded ist, dass nur ein Prozess gleichzeitig auf die Datenbank zugreifen kann. Wenn du gleichzeitigen Zugriff auf die Datenbank von mehreren lokalen Prozessen oder Programm-Instanzen brauchst, ist SQLite die bessere Wahl.
(Edit: Die FB 2.5 bietet das zwar nun, aber in der Praxis gibts damit wohl noch Probleme)
Ein Vorteil der FB embedded ist, dass du später, falls doch benötigt, ohne große Änderungen auch auf das große Client-/Server Modell umstellen kannst, was bei der SQLite nicht geht.

Geändert von blackfin (21. Jun 2012 um 14:10 Uhr)
  Mit Zitat antworten Zitat
WladiD

Registriert seit: 27. Jan 2006
Ort: Celle
135 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: firebird nach sqlite

  Alt 21. Jun 2012, 13:49
Ich würde auch zum FB embedded raten, er ist performanter als SQLite, ...
Ich weiss nicht, wie du darauf kommst, aber SQLite ist im Embedded-Bereich die "schnellste" DB. Nur für diesen Zweck wird sie auch entwickelt. Da steckt auch einiges an Interesse/Ressourcen seitens der namhaften Nutzer (Apple, Oracle, Mozilla etc.) Bei Firebird ist des Embed-Feature eher ein Nebenprodukt.

Hier mal ein ausführlicher Benchmark-Test. Ist zwar von 2006, aber dennoch interessant.
Waldemar Derr
Profil bei GitHub
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#6

AW: firebird nach sqlite

  Alt 21. Jun 2012, 13:58
Zitat:
SQLite ist im Embedded-Bereich die "schnellste" DB
das gilt sicher im Vergleich der SQLite zu Firebird Embedded Versionen kleiner als in der Version 2.x
Google mal nach aktuelleren Benchmarks, da schlägt die FB Embedded 2.5 die SQLite in vielen Fällen
(gut, in vielen Fällen auch nicht, es kommt, wie immer, auf den Anwendungsfall an )

Die SQLite hat durchaus manche Performance-Vorteile in gewissen Situationen, allerdings ist das Feature-Set ziemlich eingeschränkt im Vergleich zur Firebird Embedded.

So korrigere ich meine vorherige Aussage auf folgendes Statement:
Die FB Embedded ist im Feature-/Performance-verhältnis derzeit das Beste.

Firebird stinkt meiner Meinung generell dann ab, wenn es über TCP-Connections geht, da das Protokoll ziemlich "bloated" ist. Hat sich zwar in der 2.5 verbessert, aber ist immer noch ein Flaschenhals. Die embedded ist allerdings ziemlich fix.

Geändert von blackfin (21. Jun 2012 um 14:05 Uhr)
  Mit Zitat antworten Zitat
Iwo Asnet

Registriert seit: 11. Jun 2011
313 Beiträge
 
#7

AW: firebird nach sqlite

  Alt 21. Jun 2012, 14:05
Ich weiss nicht, wie du darauf kommst, aber SQLite ist im Embedded-Bereich die "schnellste" DB. Nur für diesen Zweck wird sie auch entwickelt.
Ich glaube, SQLite wurde vor dem Hintergrund eines kleinen Footprints entwickelt, denn sie heißt SQLite, nicht SQLFast

Ich kann mir zudem nicht vorstellen, das die DB bei sehr sehr großen Datenmengen noch performat läuft, dann dafür wurde sie nicht entwickelt.

Ich würde bei einer Entscheidung (FB, SQLite, etc.) auch die Zugriffskomponenten in Betracht ziehen: zumindest für ältere Delphi-Versionen (ohne Generics) habe ich keine zuverlässige und robuste Komponentensammlung gefunden. Die einzigen, die etwas taugen, umgehen TDataset-Derivate.
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#8

AW: firebird nach sqlite

  Alt 21. Jun 2012, 14:12
Zitat:
...zumindest für ältere Delphi-Versionen (ohne Generics) habe ich keine zuverlässige und robuste Komponentensammlung gefunden...
Die derzeitige UniDAC-Version 4.1 gibt es von XE2 bis zu Delphi 6 und bietet Zugriff auf sowohl SQLite als auch FB embedded.
SQLite geht damit sogar ohne die SQLite-DLL ("direct access mode").

P.S.
Nein, ich verdiene nichts an UniDAC (im Gegenteil, ich habe sie mir selbst ja gekauft), auch wenn das inzwischen wohl bald so rüberkommt, weil ich sie hier oft empfehle....ich finde die Komponenten nur so gut, dass ich eine klare Empfehlung aussprechen kann.

Geändert von blackfin (22. Jun 2012 um 00:31 Uhr)
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#9

AW: firebird nach sqlite

  Alt 21. Jun 2012, 14:36
Wenn schon eine Firebird Datenbank im Einsatz ist, dann würde ich auch Firebird Embedded empfehlen, damit man sich nicht ein weiteres DB-Produkt mit ins Boot holt.
Zitat:
Ein Nachteil der FB embedded ist, dass nur ein Prozess gleichzeitig auf die Datenbank zugreifen kann. Wenn du gleichzeitigen Zugriff auf die Datenbank von mehreren lokalen Prozessen oder Programm-Instanzen brauchst, ist SQLite die bessere Wahl.
(Edit: Die FB 2.5 bietet das zwar nun, aber in der Praxis gibts damit wohl noch Probleme)
Ein konkurrierender Zugriff von mehrerer Embedded-Prozessen und regulären Firebird-Serverprozessen klappt mit Firebird 2.5 wunderbar, da Embedded in 2.5 auf der "SuperClassic" Architektur basiert. Vorausgesetzt, es werden keine 32-bit und 64-bit Prozesse gemixt und das Datenbankfile nicht übers LAN von einem Share zugegriffen wird.
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.903 Beiträge
 
FreePascal / Lazarus
 
#10

AW: firebird nach sqlite

  Alt 25. Jun 2012, 11:04
alsooo

ich hab jetzt einfach mal meine vorhandenen Programmen genommen und anstatt die "normale" fbclient.dll die vom embedded Server verwendet.
Laut Artikel aus dem EntwicklerMagazin muss man diese dazu einfach umbenennen, die Programmdatei, die dll sowie die firebird.conf und evtl. noch die Verzeichnisse \intl\ und \udf\ ins Programmverzeichnis ablegen.
Fertig.

Leider schmiert jedes meiner Porgramme so mit einer "access violation" ab.

Hat jemand nen anderen Plan, ohne dass ich die Programme durchsteppen muss?

Danke gruss KHH
Karl-Heinz
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz