不能与MS Access数据库在Linux上

问题描述:

我必须安装在ubuntu 14.0unixodbclibodbc PHP连接和配置在这里是配置不能与MS Access数据库在Linux上

/etc/odc.ini 
[MyDriver] 
Description = MyDriver Driver for MyDBMS 
Driver  = /path/to/libmyodbc.so 
Setup  = /path/to/libmyodbcs.so 
FileUsage = 1 
UsageCount = 1 

和数据源配置

[MyDataSource] 
Description = The Source of My Data 
Driver  = MyDriver 
ServerName = localhost 
Database = MyDatabase 
UserName = admin 
Password = something 

这里是PHP代码

$query = 'SELECT * FROM MyTable'; 
$mdb_file = '/path/to/example.mdb'; 
$uname = explode(" ",php_uname()); 
$os = $uname[0]; 
switch ($os){ 
    case 'Windows': 
    $driver = '{Microsoft Access Driver (*.mdb)}'; 
    break; 
    case 'Linux': 
    $driver = 'MDBTools'; 
    break; 
    default: 
    exit("Don't know about this OS"); 
} 
$dataSourceName = "odbc:Driver=$driver;DBQ=$mdb_file;"; 
$connection = new \PDO($dataSourceName,'',''); 
$result = $connection->query($query)->fetchAll(\PDO::FETCH_ASSOC); 
print_r($result); 

但它通过访问拒绝root用户,然后,如果我输入SQL 的用户名它与SQL连接

变化

$dataSourceName = "odbc:Driver=$driver;DBQ=$mdb_file;"; 

$dataSourceName = "odbc:Driver=$driver;DBQ=$mdb_file;Uid='';Pwd='';"; 
+0

我做的,但它只是用mysql数据库连接不尽管MS访问我的dsn指ms访问文件 – jamal