2

我有一个带有 HyperFileSQL 的数据库,我想通过 php 访问这个数据库。如果我使用 IODBC 与 iodbc.ini 连接,它可以工作!!!但是当我想从 php 与 odbc 连接时,我没有这个作为回报:

SQLSTATE[0] SQLDriverConnect: 0 [unixODBC]I

当我使用此行从 iodbc 连接到数据库时:

iodbctest DSN=DACHFSQL  

有用 !

这是我的代码:`

try{
    $conn = new PDO("odbc:Driver={HFSQL};DSN={DACHFSQL};Server=$db_server_name;Port=$port;Database=$database;",$user,$password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "SELECT * FROM contacts";
    $res_select = $conn->prepare($sql);
    $res_select->execute();
} catch (PDOException $e) {
echo 'Échec lors de la connexion : ' . $e->getMessage();}

我不知道为什么我无法连接...请帮助!

4

2 回答 2

1

此代码适用于我(WD 21)。

$hf_hostname = "localhost";
$hf_port = "4900";
$hf_database = "MyDb";
$hf_user = "admin";
$hf_password = "";
$hf_dsn = sprintf("odbc:DRIVER={HFSQL};Server Name=%s;Server Port=%s;Database=%s;UID=%s;PWD=%s;", $hf_hostname, $hf_port, $hf_database, $hf_user, $hf_password);
$hf_dbh = new PDO($hf_dsn);

高温高压

于 2016-05-23T21:22:09.813 回答
1

您需要使用 iodbc 支持(而不是 odbc)编译 php。

于 2016-07-22T12:44:15.027 回答