Lazarus DB Faq/de

From Free Pascal wiki
Jump to navigationJump to search

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

Allgemein

Diese FAQ ist auf die Datenbank-Programmierung mit Lazarus ausgerichtet.

Wo kann ich weitere FAQs finden?

Schauen Sie auf die offizielle Webseite www.lazarus.freepascal.org. Dort gibt es weitere FAQs. Hier können sie eine Kopie der FAQ von www.freepascal.org finden.

Wo kann ich Datenbank-Komponenten finden?

Als Startseite für den Bereich Datenbanken dient diese Seite.

Im Moment sind die SQLdb Komponenten ein Teil des Lazarus-Package. Sie müssen sie nur installieren. Wenn Sie in das Verzeichnis [$LazarusDir]/components schauen, dann sehen Sie ein Unterverzeichnis SQLdb. Installieren Sie sqldblaz.lpk und Sie werden in der Lage sein, Verbindung zu MySQL, Interbase / Firebird und Postgres Servern herzustellen. Schauen Sie hier für Hilfe zum Installieren von Packages.

Gibt es noch andere Komponenten?

Sie müssen ZEOSDBO_Rework downloaden von ZEOS CVS. Zur Verwendung der ZEOS Komponenten siehe Zeos Tutorial.

  • FIBL - FIBL ist Sergey Smirnov's Port von FreeIB by Greg Deatz. Arbeitet mit Interbase und Firebird
  • Advantage - Advantage TDataSet-Abkömmling. Unterstützt den Advantage-Database-Server Version 10.1 oder größer.

Interbase / Firebird

Wie erhalte ich von Linux aus Verbindung zu einem Windows Server?

Es ist leider nicht sehr offensichtlich, den korrekten Pfad zu einer Datenbank auf einem Windows Server von einem Linux Client aus einzugeben.

Nehmen wir an, Sie haben Firebird im Verzeichnis F:\Program Files\firebird\ installiert. Die Beispieldatenbank 'employee.fdb' befindet sich dann im Verzeichnis F:\Program Files\firebird\examples\. Die IP-Adresse Ihres Computers lautet 192.168.2.100.

Wenn Sie dann den folgenden Datenbanknamen

192.168.2.100:F:\Program Files\firebird\examples\employee.fdb

in ihrer IBConnection eingeben, werden Sie Verbindung zur gewünschten Datenbank erhalten.

Beachten Sie, dass Sie keinen Wert für die Eigenschaft 'Hostname' eingeben müssen!

MySQL

Welche Version von MySQL wird unterstützt?

Gegenwärtig werden MySQL 4.0, MySQL 4.1, MySQL 5.0 und MySQL 5.1 von den SQLdb Komponenten unterstützt (für 5.1 wird die Compilerversion 2.5.1 benötigt). Stellen Sie sicher, dass Sie die korrekte Verbindungskomponente für die Version Ihrer Clientbibliothek verwenden. Wenn Sie die Clientbibliotheken für MySQL 4.1 installiert haben, dann müssen Sie die TMySQL41Connection Komponente verwenden, sogar wenn auf dem Server die Version 4.0 oder 5.0 läuft.

Pascal Data Objects

Es gibt jetzt eine Alternative. Die Funktionen wie prepared statements, binding und stored procedures, die mit MySQL 4.1 und 5.0 eingeführt wurden, werden durch die Datenbank-API namens Pascal Data Objects unterstützt, die sich von PHP Data Objects ableitet. Der gesamte Code und die Dokumentation, die man braucht, um die API zu benutzen, sind auf Sourceforge erhältlich:

http://pdo.sourceforge.net

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

PostgreSQL

Sie können mit einer TPQConnection Komponente eine Verbindung zu einer PostgreQSL Datenbank herstellen. Diese Komponente verwendet die PostgreSQL libpq Verbindungsbibliothek. Damit können Sie mit beinahe jeder PostgreSQL Datenbank verbinden, aber die Komponente unterstützt nicht die folgenden Verbindungsoptionen:

  • Port
  • ClientEncoding

Möglicherweise gibt es noch andere, nicht unterstützte Verbindungsoptionen.

Die Komponente 'TPQConnection' unterstützt nicht direkt die Eigenschaft 'Port', aber Sie können der Komponente den Port mittels des Parameters 'Params' übergeben:

PQConnection.Params.Add('port=' + VariableContainingPort);

Siehe auch