Linux マシン (centos 6.10) から Windows マシン (Windows サーバー 2003) の mdb ファイルにアクセスしたいと思います。
私はmdbtoolsとunixodbcを使用しています
これまで私がしたこと
odbc.ini
[mydatabase]
Driver = MDBTools
Description = Microsoft Access Try DB
Servername = localhost
Database =/mnt/example.mdb
UserName =Admin
Password =
port = 5432
odbcinst.ini
[MDBTools]
Description = MDBTools Driver
Driver64 = /usr/lib64/libmdbodbc.so.0
Setup64 = /usr/lib64/libmdbodbc.so.0
FileUsage = 1
UsageCount = 1
ターミナルで isql を使用して接続を確認します
isql -v mydatabase
このようなクエリを使用して、データベースを正常にクエリできます
select * from units
今はphpを使ってaccessデータベースに接続したい
test4.php
<?php
error_reporting(E_ALL); ini_set('display_errors', 1);
$myDB = odbc_connect("mydatabase","Admin","");
$query = "select * from units";
$result = odbc_exec($myDB, $query);
$report = odbc_fetch_row($result);
echo odbc_result($result, 1);
odbc_close($myDB);
?>
私はこのエラーを受け取りました
Warning: odbc_connect(): SQL error: Failed to fetch error message, SQL state HY000 in SQLConnect in /var/www/test/test4.php on line 6
Warning: odbc_exec() expects parameter 1 to be resource, boolean given in /var/www/test/test4.php on line 11
Warning: odbc_fetch_row() expects parameter 1 to be resource, null given in /var/www/test/test4.php on line 12
Warning: odbc_result() expects parameter 1 to be resource, null given in /var/www/test/test4.php on line 13
Warning: odbc_close() expects parameter 1 to be resource, boolean given in /var/www/test/test4.php on line 15
現在使っている
PHP Version 7.2.28
mySQL Version 5.7.29