Mit Ruby kann man auf alle verbreiteten Datenbanken zugreifen, z.B. MySQL, Postgres, Oracle, MSQL. Auch Schnittstellen wie ODBC sind implementiert. Das Paket dbi stellt ein generisches Datenbankinterface dar, worüber auf die konkrete Datenbank zugegriffen wird. Über diese Kapselung will man erreichen, dass der Code Datenbankunabhängig programmiert werden kann. Für jede Datenbank braucht dbi eine Connector. Dieses Connectoren sind meistens in C implementiert, also nicht pure Ruby. Entweder kompiliert man sich die Connectoren auf seinem Zielsystem selbst oder sie sind bei der Distribution mit dabei.
Debian und dbiBei Debian Sarge ist die Unterstützung bestens. Es gibt vorkompilierte Pakete. Um z.B. auf eine MySQL Datenbank zuzugreifen, müssen folgende Ruby-Pakete installiert werden:
Das dbi-Paket greift hierbei auf das libmysql zu, welches man auch unabhängig für den Zugriff auf MySQL nutzen kann. libdbd ist dabei der Connektor, der libmysql mit libdbi verbindet. Alle verfügbaren Adapter erhält man übrigens mit
Wichtig ist immer, dran zu denken, dass neben dem Connector weitere Bibliotheken für die konkrete Datenbank notwendig sein können, evtl. auch Bibliotheken, die direkt zur Datenbank mitgeliefert werden. Windows und dbiIm OneClickInstaller vom Dezember 2004 wurde dbi mitgeliefert, ebenso Connectoren für ODBC und Oracle. Leider fehlen die MySQL und Postgres Connectoren. Das ist unschön, weil viele keine Visual-C++ Umgebung installiert haben, um diese selber zu erzeugen. Siehe hierzu auch hier... Man kann auf MySQL und Postgres unter Windows natürlich auch über ODBC zugreifen. ODBC wird von fast jeder Datenbank unterstützt. Für ODBC muss man sich als erstes eine ODBC-Datenquelle einrichten. Unter Windows 2000 geht das für Access wie folgt:
Nehmen wir an, die Datenquelle heißt 'test' und dort ist Tabelle1 enthalten, die wir zuvor mit Access schon mit einigen Einträgen gefüllt haben. Dann wird folgendes Programm die Daten abfragen und ausgeben.
Beispielprogramm
Weblinks
|
|||||||||||||||||||