Seite 1 von 1
Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 18.08.2010 22:42
von Falko
Ich möchte hier einen Thread eröffnen, ob schon jemand versucht hat,
aus dem aktuellen GFABasic GB32 die Codebase 6 - Dlls in PB zu nutzen?
Soweit ich weiss, soll das eine sehr schnelle Datenbanklibray von Sequiter Software Inc. sein.
Aktuelle Downloads für interessierte findet man hier:
http://sites.google.com/site/gfabasic322/
Wer gleich alles komplett als 9MB gepackt laden will, kann direkt hier auf diesen Link gehen.
http://docs.google.com/leaf?id=0ByTZj8Q ... ZmRj&hl=en
Die Dokumentation und die Referenz ist hier komplett in deutsch enthalten.
Die dort enthaltene Codebase 6 beschreibt folgendes:
The Visual Basic Engine For Database Management
Clipper Compatible
dBASE Compatible
FoxPro Compatible
Interessant wäre damit Datenbanknutzung unter PB zu ermöglichen, auch wenn PB SQL und einen kleinen
Satz von Datenbankfunktionen anbietet.
Wie es rechtlich zur Nutzung dieser Datenbankfunktion aussieht, kann ich nicht sagen, da GFABasic nun frei und kostenlos angeboten wird.
Gruß Falko
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 18.08.2010 23:01
von Kiffi
Nix gegen GFA-BASIC, aber dieses Datenbank-Dingens ist von 1996.
DBase, FoxPro, Clipper...
Willst Du Dich wirklich mit so einem alten Kram herumschlagen?
Ich vermute, dass Codebase nicht leistungsfähiger oder performanter
als beispielsweise SQLite ist.
Grüße ... Kiffi
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 18.08.2010 23:13
von Falko
>>Willst Du Dich wirklich mit so einem alten Kram herumschlagen?
Damit hast du wohl Recht. Ich habe zwar das komplette Original, was ich damals
gekauft hatte, und da war mal nur so ein Gedanke in Richtung PB, falls die die Geschwindigkeit
ausreichend schnell ist und die Funktionen in PB direkt aus der DLL so genutzt werden können,
wie es normal unter GFA-Basic war. Ich selber hatte mich damit noch nicht beschäftigt.
Wie schnell SQLlite gegenüber Codebase 6 ist, habe ich leider keinen Vergleich dazu gefunden.
Mir ging es eigentlich um das FoxPro, welches meine Schwester als Programm besitzt um diese
Datenbank über PB nutzen zu können.
Ich habe mal hier was aus der Doc heraus gelesen und vielleicht kann man das mit SQLlite als Vergleich
gegenüberstellen.
2. Leistungsdaten der Datenbank-Engine
Wie schnell ist die Datenbank-Engine?
Eine Datenbankabfrage auf 1.000.000 Datensätze muß nicht länger als
eine Sekunde dauern. Die von unserem Partner Sequiter selbst entwickelte
Bit Optimization Technology sorgt dafür, daß Ihre Abfragen auch bei großen
und größten Datenbanken innerhalb einer Sekunde beantwortet sind.
Die intelligente Abfragetechnik minimiert den Aufwand und sorgt auch bei
größten Datenmengen für ein ausgezeichnetes Antwortverhalten. Die Datenbank-
Engine erreicht diese Geschwindigkeit nicht nur bei der Abfrage
einer Datentabelle, sondern sogar bei Abfragen auf mehrere, relational
verbundene Datentabellen.
Es ist nur so ein Gedanke gewesen. Wenn es sich nicht lohnt, lasse ich lieber die Finger davon.
Gruß Falko
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 18.08.2010 23:38
von Kiffi
Falko hat geschrieben:Mir ging es eigentlich um das FoxPro, welches meine Schwester als Programm besitzt um diese
Datenbank über PB nutzen zu können.

Der Zugriff auf alte DB-Systeme ist durchaus ein Argument. Allerdings
gibt es für FoxPro auch einen ODBC-Treiber. Damit kannst Du dann
wiederum nativ aus PB auf die Datenbank Deiner Schwester zugreifen.
Falko hat geschrieben:Ich habe mal hier was aus der Doc heraus gelesen und vielleicht kann man das mit SQLlite als Vergleich
gegenüberstellen.
[...] Eine Datenbankabfrage auf 1.000.000 Datensätze muß nicht länger als
eine Sekunde dauern. [...]
ist eigentlich wenig aussagekräftig. Da steht nirgendwo, wie die Datenbank
ausgesehen hat und wir wissen auch nicht, wie schnell der Rechner (damals)
war, auf dem diese Messung stattfand.
hier dennoch mal ein kleiner Vergleich zu SQLite (1 Tabelle, 1 Feld, 1 Mio Datensätze):
Code: Alles auswählen
UseSQLiteDatabase()
DB = OpenDatabase(#PB_Any, ":memory:", "", "", #PB_Database_SQLite)
DatabaseUpdate(DB, "Create Table myTable (myColumn)")
; Testdaten einkippen. Das hier dauert am längsten
For Counter = 1 To 1000000
DatabaseUpdate(DB, "Insert Into myTable (myColumn) Values (" + Str(Counter) + ")")
Next
; Hier die eigentliche Abfrage:
Z1=ElapsedMilliseconds
DatabaseQuery(DB, "Select * From myTable Where myColumn = " + Str(Random(1000000)))
While NextDatabaseRow(DB)
Debug GetDatabaseLong(DB, 0)
Break
Wend
Z2=ElapsedMilliseconds
MessageRequester("Benötigte Zeit:", Str(Z2-Z1) + " ms")
Grüße ... Kiffi
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 19.08.2010 13:29
von Falko
Naja, die Rechner um das Jahr 2000 waren noch nicht so schnell wie heute.
Aber mit den heutigen Rechnern kann auch eine Langsame Datenbank mithalten.
Also kann man da keine Messlatte ansetzen, ob sich das lohnen wird.
An ODBC hatte ich im Moment nicht gedacht. Aber dieser muss erst installiert sein.
Darum dachte ich, wenn man die Dll's mit PB einsetzt, erstpart man sich das und
kann die Datenbank auch direkt aus dem Stick nutzen.
Aber anders herum ist das SQLlite völlig ausreichend und da kann ich dir nur Recht geben.
Gruß Falko
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 19.08.2010 14:08
von ts-soft
Falko hat geschrieben:An ODBC hatte ich im Moment nicht gedacht. Aber dieser muss erst installiert sein.
Bei Win95/Win98 kommt der mit dem Office-Paket, ansonsten ist der Treiber seit W2K immer vorhanden
Gruß
Thomas
PS: Der Speed-Vergleich mit Memory-Datenbank ist sowieso nicht Aussagekräftig

Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 28.08.2010 22:08
von super_castle
Es ist nur so ein Gedanke gewesen. Wenn es sich nicht lohnt, lasse ich lieber die Finger davon.
Damit liegst du garnicht so schlecht.
Es lohnt sich damit zu arbeiten.
Das was da geschaffen wurde , wird heute nicht mehr erreicht, weil man nicht mehr auf das Programm schaut, sondern sich einen schnelleren Rechner kauft.
Wie geschrieben, nutze es für Purebasic oder nutze das GFA32 damit.
Das Neue ist nicht immer das bessere.
Das Alte versteht man noch.
Gruss
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 29.08.2010 09:38
von Falko
Danke

Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 29.08.2010 09:57
von edel
Was du nicht vergessen darfst ist die Dokumentation oder Support. Fuer heutige gaengige Datenbanken
findest du tonnenweise Informationen, die dir bei Problemen weiter helfen. Bei alten Datenbankensystem
sieht es da schon ganz anders aus.
Re: Codebase 6.0 aus der freeware GFA-BASIC nutzen?
Verfasst: 29.08.2010 20:55
von Falko
Hallo edel,
das mit der Dokumentation bzw. Support zu aktuellen bzw. neueren Datenbanken
ist schon richtig.
Man sieht es ja an SQL, welches universell genutzt werden kann. Quasi Plattformunabhängig,
dazu lässt sich die SQL-Datenbank überall nutzen, wie z.B. PHP im Internet.
Aber interessant ist es schon, weil Codebase damals eben für sehr langsame Rechner programmiert
wurde um dennoch eine hohe Datenleistung zu erreichen.
Gruß Falko