Databases/de

From Free Pascal wiki
Revision as of 18:15, 1 May 2011 by Billyraybones (talk | contribs) (template Database Programming/de)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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

Work in progress..

Artikel über Datenbank-Programmierung

  • Lazarus-Datenbank-Tutorial - Eine Einführung über die Verwendung von Lazarus mit Datenbanken.
  • Datenbanken - Allgemeine Informationen über die Einsatzmöglichkeiten von Lazarus und FPC mit Datenbanken.
  • Datenbanken mit Lazarus - liefert einen allgemeinen Überblick über die Verwendung von Datenbanken mit Lazarus.
  • How to write in-memory database applications in Lazarus/FPC - Praktische Anweisungen zum programmieren mit MemDatasets
  • MySQLDatabases/de - erklärt, wie man auf eine einfachere Weise eine Verbindung mit einem MySQL Server herstellt.
  • Zeos_tutorial/de - Erzeugen von Datenbank-Anwendungen mit den Zeos-Komponenten.
  • Zeos+SQLite Tutorial - Gutes Tutorial mit Screenshots und Screencasts es wird auf spanisch erläutert, wie SQLite und Zeos, verwendet werden.
  • Pascal Data Objects is a database API that worked for both FPC and Delphi and utilises native MySQL libraries for version 4.1 and 5.0 and Firebird SQL 1.5, and 2.0. It's inspired by PHP's PDO class.
  • Lazarus Tdbf Tutorial/de - Datenbank-Entwicklung unter Verwendung der TDbf-Komponente (entwickelt von Micha Nelissen) mit Lazarus
  • Lazarus DB FAQ (deutsch) - Häufig gestellte Fragen zur Datenbank-Programmierung mit Lazarus.
  • Firebird - Firebird zusamen mit FPC/Lazarus verwenden
  • ODBCConn - Verwendung von 'ODBCConn' unter FPC/Lazarus für Verbindungen zu ODBC-Datenquellen.
  • MS Access - Zugriff auf eine MS-Access Datenbank

Einleitung

Wie bei anderen Entwicklungssystemen auch spielt die Zusammenarbeit mit verschiedenen Datenbanken bei Lazarus eine bedeutende 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, die 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, dass 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 Benötigt Client lib? Benötigt Server? Unterstützte Versionen Unterstützte Plattformen
Textdateien SDFLaz Nein Nein - Alle
Im Speicher MemDSLaz Nein Nein - Alle
DBase DBFLaz Nein Nein III+, IV, VII Alle
FoxPro DBFLaz Nein Nein - Alle
Paradox TParadoxDataSet Nein Nein bis zu Version 7 (und darüber ??) Alle
SQLite SQLite Ja Nein - -
MySQL SQLdb Ja Ja 3 - 4.0 i386: Linux, Win32
Firebird IBase Ja Ja 1 - 1.5 i386: Linux, Win32
PostgreSQL SQLdb Ja Ja 6.6 - 8 i386: Linux, Win32
ODBC SQLdb Ja Depends 3.x 1) i386: Linux, Win32
Interbase IBase Ja Ja 4 - 6 i386: Linux, Win32
Oracle SQLdb Ja Ja - -

1) Diese Versionsnummer bezieht sich auf den ODBC Standard, nicht auf die Versionsnummer eines Treibers oder Treibermanagers. Es gibt ODBC 3.x Treiber für die meisten DBMS.

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, dass 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 (unter Windows). Die Komponenten (TSQLQuery, TSQLTransaction, TIBConnection, TODBCConnection, TOracleConnection, TMySQL40Connection, TMySQL41Connection, TMySQL50Connection, 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.

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.

lazreport.lpk

Mit LazReport enthält Lazarus auch einen Reportgenerator. Dieser basiert auf FreeReport 2.32. Zum Funktionieren von LazReport muss das Package Printer4Lazarus installiert sein. (Mit Revision 11950 wurde LazReport in das Lazarus SVN Repository übernommen.)

lazreportpdfexport.lpk

Dieses Package erweitert LazReport um die Möglichkeit, einen Report auch im PDF-Format exportieren zu können.

Externe Komponenten / Bibliotheken

Zeos DataBase Objects

Diese Komponenten bieten Zugriff auf verschiedene Datenbanken. Weitere Informationen finden sie hier. Es existiert auch ein 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 bei Sourceforge zu finden:

http://pdo.sourceforge.net

Jan 30, 2007: PDO hat Treiber für Firebird 1.5 und Firebird 2.0 hinzugefügt

--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, Free Pascal und Lazarus aus. Für die meisten Benutzer dürfte es gewöhnungsbedürftig sein, dass hier nicht die übliche Anbindung über TDatasource erfolgt.

Gegenwärtig sind folgende Features enthalten:

  • Direkter Zugriff auf Firebird 1.0.x, 1.5.x und 2.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.

Unified Interbase

UIB bietet Zugriff auf Interbase, Firebird und YAFFIL Datenbanken. Die Homepage ist www.progdigy.com. Ein SVN-Repository ist verfügbar unter https://uib.svn.sourceforge.net/svnroot/uib .

TechInsite Object Persistence Framework (tiOPF)

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

Advantage TDataSet Descendant

The Advantage TDataSet Descedant provides a means of connecting to (and opening tables with) the Advantage Database Server. Advantage is a flexible, administration-free embedded database that provides Client/Server as well as Peer-to-peer access to Clipper, FoxPro and Visual FoxPro 9 DBF file formats, as well as a proprietary file format that provides a migration path allowing the use of newer features.

Key Features:

  • Royalty-free peer-to-peer database access with migration path to Client/Server
  • Multi-Platform (Clients supported on Windows and Linux, Server supported on Windows, Linux, and NetWare)
  • Supports Both navigational and relational SQL database access
  • Full-text search engine
  • Table, Index, Memo, and communication encryption
  • Compatible with native TDataset components
  • Online Backup
  • Server supports Replication

For more information, see the Advantage Database Server website.

Siehe auch