因为没有人回答我的问题Codeigniter using ms access database,所以我提出新的问题我不使用codeigniter
如果我在我的电脑上使用mdb它可以工作,但如果我在网络中的另一台电脑上使用mdb
我收到错误这是我的代码
<?php
$connect = odbc_connect("testdb", "", "");
$query = "SELECT * FROM ACGroup";
$result = odbc_exec($connect, $query);
while(odbc_fetch_row($result)){
$name = odbc_result($result, 1);
echo("$name");
}
?>
我使用来自网络中另一台计算机的数据来创建odbc
"testdb" are data sourcename and database \\ip\folder\testdb.mdb
我收到了这个错误
Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][ODBC Microsoft Access Driver]
The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data.,
SQL state S1000 in SQLConnect in D:\blabla\coba.php on line 3
我已经尝试过文件夹设置但不起作用
答案 0 :(得分:0)
您正在使用的ODBC连接字符串("testdb"
)甚至没有指定数据库驱动程序,更不用说数据库文件了。您需要阅读$dsn
的相应格式。 (The php.net page甚至还有几个Access文件示例。)
答案 1 :(得分:0)
问题可能在于Apache用户对mdb文件的权限。
转到您的mdb文件,右键单击该文件 - &gt;属性 - &gt;安全选项卡,查看您的Apache用户是否位于对mdb文件具有访问/控制权限的用户组上。
要查看/更改您的Apache用户,请转到控制面板 - &gt;管理工具 - &gt;服务,右键单击Apache服务 - &gt;属性 - &gt;登录选项卡。在“登录身份”选项中,查看所选用户是否属于可以访问mdb文件的用户组。如果没有,请创建一个并将其添加到用户组,然后将其用作Apache帐户。