我有一个简单的访问数据库,我试图使用PHP连接。如果我使用此连接字符串:
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.');
$rs = new COM("ADODB.RecordSet") or exit('Cannot start Recordset.');
$connstring = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\\Intranet\\is3\\new_site\\backend\\database\\blog.mdb";
$conn->Open($connstring) or exit('Cannot open with driver.');
如果我执行此操作,则显示"无法打开驱动程序"信息。但是,如果我尝试使用它:
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.');
$rs = new COM("ADODB.RecordSet") or exit('Cannot start Recordset.');
$connstring = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=D:\\Intranet\\is3\\new_site\\backend\\database\\blog.mdb";
$conn->Open($connstring) or exit('Cannot open with driver.');
它没有显示任何消息,并且似乎只是停在$ conn->打开的行(此后我还有其他代码来显示不运行的信息)。我没有得到任何错误消息或任何东西。任何帮助将不胜感激。
由于
答案 0 :(得分:0)
首先,您需要取消注释该行
extension = php_pdo_odbc.dll(php.ini)
然后尝试这种连接方式:
$dbName = $_SERVER["DOCUMENT_ROOT"] . "D:\\Intranet\\is3\\new_site\\backend\\database\\blog.mdb";
if (!file_exists($dbName)) {
die("Could not find database file.");
}
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$dbName; Uid=; Pwd=;");
答案 1 :(得分:0)
$strConn = new COM("ADODB.Connection") or die("Cannot start ADO");
$strConn->Open("DRIVER={Microsoft Access Driver (*.mdb)};
DBQ=" .realpath("db.mdb"));