du kommst auch mit einem aktuellen Firebird Client auf nahezu alle Interbase Versionen, sofern du bei Blob und Interbase speziellen Datentypen vorsichtig bist. Wir nutzen das regelmäßig, um die letzten Interbase Kunden so nach und nach auf Firebird umzustellen (Wir gehen dabei direkt aus der Firebird Datenbank via execute statement on external auf Interbase, ist aber für dich hier erst mal nicht wichtig, wenn du bei Interbase bleiben willst oder musst).
Wichtig ist dabei aber, das du einen connectionstring am besten mit port nutzt, um dich mit dem interbase server zu verbinden (z.B. 1.2.3.4/3050:C:\pfad\
db.gdb oder ähnlich. Der Instanzname von Interbase, sofern benutzt, statt /3050 hilft dir nicht weiter. Nimm den
tcp/
ip port
(standard 3050).
Wenn du auf der selben Kiste Interbase und Firebird parallel installiert hast, könnte es sein, das die sich auf 3050 in die quere kommen. stelle dann ggf den firebird port in der firebird.conf unter remoteserviceport auf einen anderen port und starte die kiste neu.
du kommst auch mit pdo und dem firebird client dann auf interbase, wenn der connection string passt
hier ein Beispiel Quellcode einer minimal php Anwendung aus unseren Powerworkshops
Code:
<?php
try
{
$dbh = new PDO("firebird:dbname=
localhost/3050:c:\
db\barcode.fdb", "SYSDBA", "masterke");
$dbh->beginTransaction();
$
sql = "SELECT txt FROM IBEWEB('";
$
sql .= $_POST["CMD"];
$
sql .= "','";
$
sql .= implode("#",$_POST);
$
sql .= "#";
$
sql .= implode("#",$_GET);
$
sql .= "','";
$
sql .= $_SERVER["REMOTE_ADDR"];
$
sql .= "')";
foreach ($dbh->
query($
sql) as $row)
{
print $row['TXT'] . '';
}
$dbh->commit();
}
catch (PDOException $e)
{
echo $e->getMessage();
}
$dbh=null;
?>