Seite 1 von 3

Welche Datenbank ist am besten?

Verfasst: 14.03.2005 00:36
von Peter
Hallo,

ich pflege zur Zeit eine Datenbank, welche unter MS-Access von mir programmiert wurde. Nervig dabei ist, daß ich jedesmal eine "dicke" CD mit Runtime-Modul ausliefern muß welche immer installiert werden muß.

Auf der Suche nach einer neuen (alternativen) Programmiersprache für mein Programm bin ich nun über PureBasic gestolpert.

Meine Frage ist nun welche Datenbank man am besten unter PureBasic setzt. Ich habe zwar inzwischen gelesen daß auch mdb-Datenbanken funktionieren, aber natürlich stellt sich dann die Frage ob man weitere mdb's auch mit PureBasic erstellen kann oder ob es grundsätzlich eine "optimale" Lösung/Datenbank gibt.

Danke für Meinungen und Hilfen!

Peter

Verfasst: 14.03.2005 00:45
von MVXA
Ich kann http://www.sqlite.org/ empfehlen. Für diese Lib gibt es auch von Kiffi ein paar Codes um sie in PB benutzen zu können.

Verfasst: 14.03.2005 13:40
von bobobo
Die Datenbankbehandlung von (nativem) Pb ist immer ne
ODBC-Anbindung.

Was wohl bedeutet, dass, wenn Du eine MDB als Datenbank
mit ausliefern möchtest, Du auch immer den ODBC-Kontext
auf dem InstallationsZiel mit einrichten musst (und damit
vermutlich auch wieder eine Umgebung ähnlich (wenn nicht
gleich) wie Deine ursprüngliche Lösung .. also wieder ne
dicke CD)

Natürlich kann man sich auch Wrapper für MDB-Zugriffe
selberhäkeln, was aber die Portabilität in andere System
nicht gerade erhöht und auch wieder ne "dicke" CD verursacht.

Optimale DB-Lösungen gibt es nur insofern als die DB
passend zur Aufgabe ausgesucht wird.

Und für kleine Anwendungen reicht durchaus SQLITE (zumal SQLITE
mittlerweile auch nativ mit PHP bearbietet werden kann und somit
einer Client-Server WebAnwendung nicht allzuviel Hindernisse in
den Weg gelegt werden)

UND! für Sqlite brauchst Du anfangs nichtmal PB, da es da ein nettes
kleines Commandlinetool gibt mit dem man bestens an SQLITE-DB's
rumfrickeln kann.

Im weiteren empfiehlt sich dann der SQLITE-Wrapper (das ist
die o.a. LIB) für PB zu finden in
http://www.purearea.net/pb/download/use ... e_1.33.zip
und such dann auch mal im Pureboard-Archiv nach den diversesten
Postings bezügl. des Sqlite-Wrappers.

Verfasst: 14.03.2005 13:46
von Rings
bobobo hat geschrieben:Die Datenbankbehandlung von (nativem) Pb ist immer ne
ODBC-Anbindung.

Was wohl bedeutet, dass, wenn Du eine MDB als Datenbank
mit ausliefern möchtest, Du auch immer den ODBC-Kontext
auf dem InstallationsZiel mit einrichten musst (und damit
vermutlich auch wieder eine Umgebung ähnlich (wenn nicht
gleich) wie Deine ursprüngliche Lösung .. also wieder ne
dicke CD)
na zumind. für MDB ist eigentlich alles auf einem System enthalten, da brauch man nix mehr nachzuinstallieren (wir vernachlässigen grad mal die Win89 schiene) und entpsrechend nix mitzuliefern .
Alles was man dazu denn noch brauch wäre die ExDatabase library (Kostenlos und mit Source) von mir :)

und ein wenig SQL Kenntnisse, aber das ist immer von Vorteil

Verfasst: 14.03.2005 13:56
von Kiffi
> Alles was man dazu denn noch brauch wäre die ExDatabase library
> (Kostenlos und mit Source) von mir :)

hey, whow! Habe ich gerade erst entdeckt. Danke! :allright:

Grüße ... Kiffi

Danke für die Antworten

Verfasst: 14.03.2005 14:40
von Peter
Hallo Zusammen,

vielen Dank für die Antworten und auch konstruktiven Beiträgen.
Meine Access-Datenbank arbeitet mit 18 Tabellen, ca. 80 Abfragen und genauso vielen Formularen und Berichten.

Mit der Zeit wird die DB jedoch immer langsamer, sobald eine Tabelle mehr als 10.000 Datensätze hat und Abfragen mit mehreren Tabellen ausgeführt werden fängt das System an zu lahmen.

Deshalb bin ich auf der Suche nach einer schnelleren Lösung.
Ich vermute jedoch, daß PB dafür nicht so ganz geeignet ist.

Re: Danke für die Antworten

Verfasst: 14.03.2005 17:34
von Rings
Peter hat geschrieben:
Mit der Zeit wird die DB jedoch immer langsamer, sobald eine Tabelle mehr als 10.000 Datensätze hat und Abfragen mit mehreren Tabellen ausgeführt werden fängt das System an zu lahmen.

Deshalb bin ich auf der Suche nach einer schnelleren Lösung.
Ich vermute jedoch, daß PB dafür nicht so ganz geeignet ist.
Dein Problem ist die Datenbank, nicht das/die Programmier-Kit/sprache drumrum.
An deiner stelle würde ich in Erwägung ziehen einen richtigen SQL-Server zu benutzen. Irgendwann ist jedes flat-Datenbankmodell am ende.

Re: Danke für die Antworten

Verfasst: 14.03.2005 18:04
von Peter
Rings hat geschrieben:An deiner stelle würde ich in Erwägung ziehen einen richtigen SQL-Server zu benutzen.
Und dann mit PB darauf zugreifen? Oder was würdest Du als "Frontend" Vorschlagen?

Verfasst: 14.03.2005 18:19
von bluejoke
Jep, ich denke nicht, dass da irgendein auffälliger Geschwindigkeitsunterschied zwischen den verschiedenen Sprachen feststellbar ist.

Re: Danke für die Antworten

Verfasst: 14.03.2005 18:21
von Kiffi
> Und dann mit PB darauf zugreifen? Oder was würdest
> Du als "Frontend" Vorschlagen?

bezüglich der Geschwindigkeit macht das Frontend den geringsten Teil aus.
Am meisten kann man die Performance tunen, indem man ein gutes
Datenbankdesign wählt und an den entsprechenden Stellen passende
Indizes setzt. 18 Tabellen mit 10000 Datensätzen sollte jedes
ernstzunehmende Datenbanksystem ohne merkbare Verzögerung
verarbeiten können.

Es kommt ebenso darauf an, was Du mit den Daten machen willst. Wenn Du
beispielsweise eine umfangreiche Präsentation der Daten (z.B. in einem Grid,
als Report, oder sonstwas) planst, dann würde ich Dir empfehlen, ein
Frontend zu verwenden, welches Dir eine gute GUI-Unterstützung anbietet.
Leider fällt dann PB nicht mehr in den Kreis der zu empfehlenden
Programmiersprachen.

Grüße ... Kiffi