Difference between revisions of "Databases/de"

From Lazarus wiki
Jump to navigationJump to search
m
Line 81: Line 81:
  
 
=== TPSQL ===
 
=== TPSQL ===
Diese Komponenten bieten Zugriff auf PostgreSQL Datenbanken. Weitere Informationen finden sie auf [[TPSQL|dieser Seite]].
+
Diese Komponenten bieten Zugriff mittels TCP/IP auf PostgreSQL Datenbanken. Weitere Informationen finden sie auf [[TPSQL/de|dieser Seite]].
  
 
=== FIBL ===
 
=== FIBL ===

Revision as of 14:58, 2 August 2006

Deutsch (de) English (en) español (es) français (fr) italiano (it) 日本語 (ja) português (pt) русский (ru) 中文(中国大陆)‎ (zh_CN)

Einleitung

Wie bei anderen Entwicklungssystemen auch spielt die Zusammenarbeit mit verschiedenen Datenbanken bei Lazarus eine nicht unbedeutende Rolle. Während ein Teil der Funktionalität schon mit FPC zur Verfügung steht, kommen andere Teile (insbesondere die visuellen Komponenten) erst mit Lazarus selbst hinzu. Die bei Lazarus enthaltenen Komponenten decken schon ein gewisses Spektrum an Datenbanken ab. Da aber immer Verbesserungsbedarf besteht und es auch exotischere Datenbanken gibt, existieren externe Komponenten / Bibliotheken, welche die Möglichkeiten von Lazarus erweitern.

Diese Seite stellt einen Einstieg für das Thema 'Lazarus und Datenbanken' dar. Die folgende Tabelle bietet einen Überblick über die unterstützten Datenbanken. Da sie noch auf dem Stand von FPC 1.9.7 basiert, sollte sie schnellstens auf den aktuellen Stand gebracht werden. Ein Hinweis noch an alle Experimentierfreudigen: Installieren sie nur die Datenbank-Komponenten, deren Client-Bibliotheken (falls diese erforderlich sind) auf ihrem Computer installiert sind. Sonst kann es passieren, daß Lazarus den Start mit einer Fehlermeldung (wegen fehlender Dateien) verweigert. Da sie somit keine Möglichkeit mehr haben, die Komponenten zu deinstallieren, ist eine Neuinstallation von Lazarus erforderlich.

Tabelle 1

Datenbank Package Name Need client lib? Benötigt Server? Unterstützte Versionen Unterstützte Plattformen
Textdateien sdf Nein Nein - Alle
Im Speicher memds Nein Nein - Alle
DBase tDbf Nein Nein III+, IV, VII Alle
FoxPro tDbf Nein Nein - Alle
SQLite SQLite Ja Nein - -
MySQL MySQL Ja Ja 3 - 4.0 i386: Linux, Win32
Firebird IBase Ja Ja 1 - 1.5 i386: Linux, Win32
PostgreSQL postgres Ja Ja 6.6 - 8 i386: Linux, Win32
ODBC ODBC Ja Depends - i386: Win32
Interbase IBase Ja Ja 4 - 6 i386: Linux, Win32
Oracle Oracle Ja Ja - -

Weitere Informationen zu Lazarus und Datenbanken

Unterschiede zu Delphi

Der vielleicht wichtigste Vorteil von Lazarus gegenüber Delphi ist die Plattformunabhängigkeit. Das bedeutet auf der anderen Seite, daß es für die Windows-spezifischen Teile bei Delphi (z.B. die BDE) keine direkten Entsprechungen bei Lazarus gibt. Gleiches gilt für die meisten Reporting-Werkzeuge. Bei der Konvertierung eines Delphiprogramms nach Lazarus sollte man auf die verschiedenen Dateisysteme achten, wenn das Programm auf allen von Lazarus unterstützten Plattformen laufen soll. Als Beispiel möchte ich nur die unterschiedlichen Trennzeichen im Pfadnamen ( \ bzw. / ) nennen.

In Lazarus enthaltene Datenbank-Packages

sqldblaz.lpk

Dieses Package bietet Zugriff auf verschiedene Datenbanken (z.B. MySQL oder Interbase/Firebird). Das Package wird standardmäßig mit Lazarus installiert. Die Komponenten (TSQLQuery, TSQLTransaction, TIBConnection, TODBCConnection, TMySQLConnection, TPQConnection) befinden sich auf der 'SQLdb' Seite in der Komponentenpalette.

dbflaz.lpk

Dieses Package bietet Zugriff auf dBase und FoxPro Datenbanken. Weitere Informationen bietet das Lazarus TDbf Tutorial. Das Package wird standardmäßig mit Lazarus installiert. Die Komponente TDbf befindet sich auf der 'Data Access' Seite in der Komponentenpalette.

interbaselaz.lpk

Dieses Package bietet Zugriff auf Interbase und Firebird Datenbanken. Es ist den Komponenten bei Delphi nachempfunden, aber bei weitem nicht so umfangreich (enthält nur 3 Komponenten: TIBDatabase, TIBTransaction, TIBQuery). Außerdem erlauben diese Komponenten nur einen Lesezugriff. Das Package muß manuell installiert werden. Die Komponenten befinden sich dann auf der 'Interbase' Seite in der Komponentenpalette.

sqlitelaz.lpk

Dieses Package bietet Zugriff auf SQLite Datenbanken. Weitere Informationen sind im Lazarus Database Tutorial zu finden.

sdflaz.lpk

Das Package wird standardmäßig mit Lazarus installiert. Die Komponente TSdfDataSet befindet sich auf der 'Data Access' Seite in der Komponentenpalette.

Externe Komponenten / Bibliotheken

Zeos Bibliothek

Diese Bibliothek bietet Zugriff auf verschiedene Datenbanken. Informationen zum Zusammenspiel von Zeos und Lazarus finden sie im Zeos Tutorial.

Pascal Data Objects

Die Pascal Data Objects sind von Zeoslib abgeleitet. Es werden die mit MySQL 4.1 und 5.0 eingeführten Funktionen wie prepared statements, binding, und stored procedures von der Datenbank-API namens Pascal Data Objects unterstützt, die durch die PHP Data Objects inspiriert wurde. Der für die Verwendung dieser neuen API notwendige Code und die Dokumentation sind ein einem Trac wiki zu finden:

https://trac.synsport.com:8000/index.php/pdo/wiki (Benutzername/Passwort sind guest/guest)

--Jrmarino 11:28, 13 Mar 2006 (CET)

TPSQL

Diese Komponenten bieten Zugriff mittels TCP/IP auf PostgreSQL Datenbanken. Weitere Informationen finden sie auf dieser Seite.

FIBL

Diese Komponenten bieten Zugriff auf Interbase und Firebird Datenbanken. Die Homepage ist http://sourceforge.net/projects/fibl.

FBLib Firebird Library

FBLib ist eine Open Source Bibliothek (nicht datensensitiv) für direkten Zugriff auf die Firebird relationale Datenbank von Borland Delphi / Kylix, Freepascal und Lazarus aus. Für die meisten Benutzer dürfte es gewöhnungsbedürftig sein, daß hier nicht die übliche Anbindung über TDatasource erfolgt.

Gegenwärtig sind folgende Features enthalten:

  • Direkter Zugriff auf Firebird 1.0.x 1.5.x Classic oder SuperServer
  • Multiplattform [Win32,Gnu/Linux,FreeBSD)
  • Automatische Auswahl der Client Bibliothek 'fbclient' oder 'gds32'
  • Abfragen (Queries) mit Parametern
  • Unterstützt SQL Dialekt 1/3
  • LGPL Lizenzvertrag
  • Extrahieren von Metadaten
  • Simple Script Parser
  • Nur 100-150 KB werden zur finalen EXE hinzugefügt
  • Unterstützt BLOB Felder
  • Export von Daten als HTML SQL Script
  • Service manager (backup,restore,gfix...)
  • Events Alerter

Sie können die Dokumentation von der Webseite herunterladen.

TechInsite Object Persistence Framework (tiOPF)

Nähere Informationen zu tiOPF sind auf dieser Seite zu finden.

LazReport

Die Homepage für den Reportgenerator ist http://lazreport.sourceforge.net/. Momentan gibt es aber wohl Probleme mit der Wartung der Seite. Weitere Informationen (u.a. ein zusätzlicher Link) sind auch hier zu finden. Zum Funktionieren von LazReport muß das Package Printer4Lazarus installiert sein.