tdbengine

Aus MARJORIE-WIKI
Wechseln zu: Navigation, Suche

Die tdbengine ist ein Relationales Datenbankmanagementsystem (RDBMS) mit einer integrierten Programmiersprache (EASY). Sie wurde bis Ende 2010 als Freeware vertrieben (für Altnutzer gelten Fortsetzungsregelungen). tdbengine ist hauptsächlich für den Aufbau von Web-Datenbanken optimiert. Die Verbindung mit dem Web-Server erfolgt über die standardisierte CGI-Schnittstelle.

tdbengine ist sehr klein (etwa 400 KByte), extrem schnell und leicht zu verwalten. Es gibt Versionen für Linux (x86), FreeBSD (x86) und Windows (NT/2000/XP).Das System ist in der Programmiersprache Pascal geschrieben und mit FreePascal ohne weitere Bibliotheken oder Pakete kompilierbar.

Bei der integrierten Programmiersprache EASY handelt sich dabei um eine modulare Skriptsprache, welche sich in ihrer Syntax aus verschiedenen Elementen anderer Sprachen, wie zum Beispiel C, Pascal und BASIC bedient. Der Zugriff auf die Daten erfolgt frei von SQL. Somit ist eine wesentlich höhere Geschwindigkeit erzielbar, da beim Lesen direkt auf den Tabellen aufgesetzt werden kann.

Der Funktionsumfang von EASY ist der üblichen Einsatzweise als CGI-Datenbank für Web-Applikationen zugeschnitten und mit rund 300 Befehlen und Funktionen entsprechend umfangreich.

Die Quellcodes werden vom Compiler in einen binären Zwischencode übersetzt. Dieser Zwischencode wird dann zur Laufzeit interpretiert. Das ermöglicht es, Syntaxfehler schon zur Entwicklungszeit zu erkennen und gleichzeitig eine entsprechend schnelle Programmausführung zur Laufzeit zu ermöglichen.

Beispielprogramm:

procedure Main
 var nBottles : Integer
 var s : String
 CgiCloseBuffer
 nBottles:=99
 while nBottles>=0 do
   if nBottles=1 then
     s:=
   else
     s:='s'
   end
   CgiWriteLn(Str(nBottles)+' bottle'+s+' of beer on the wall,')
   CgiWriteLn(Str(nBottles)+' bottle'+s+' of beer,')
   if nBottles=0 then
     CgiWriteLn('Go to the store, buy some more,')
     CgiWriteLn('99 bottles of beer on the wall.')
   else
     CgiWriteLn('Take one down and pass it around,')
     CgiWriteLn(Str(nBottles)+' bottle'+s+' of beer on the wall,')
   end
   nBottles--
 end
endproc

Weblinks[Bearbeiten]

Info Sign.svg Dieser Wikipedia-Artikel wurde, gemäß GFDL, CC-by-sa mit der kompletten History importiert.