我目前面临着使用Microsoft Access作为主数据库而不是mysql开发网站的新挑战.我之前没有使用MS Access,我想指导如何去做,我已经在W3schools上查找了w3c网站,但是代码给出了错误
警告:odbc_connect()[function.odbc-connect]:SQL错误:[Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序,C:\ Users\NNALI\Desktop \中SQLConnect中的SQL状态IM002第2行的root\test.php
而这个错误
警告:odbc_exec()期望参数1为资源,布尔值在第4行的C:\ Users\NNALI\Desktop\Breweries\root\test.php中给出
我被困住了,不知道该怎么做,我将非常感谢你们的帮助.
<?php
$conc = odbc_connect("northwind", "","");
$sql = "Select * From customers";
$rs = odbc_exec($conn, $sql);
?>
Run Code Online (Sandbox Code Playgroud)
以上是我使用的代码
如果您刚刚开始使用新项目,那么我建议您使用PDO而不是旧odbc_exec()方法.这是一个简单的例子:
<?php
$bits = 8 * PHP_INT_SIZE;
echo "(Info: This script is running as $bits-bit.)\r\n\r\n";
$connStr =
'odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};' .
'Dbq=C:\\Users\\Gord\\Desktop\\foo.accdb;';
$dbh = new PDO($connStr);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql =
"SELECT AgentName FROM Agents " .
"WHERE ID < ? AND AgentName <> ?";
$sth = $dbh->prepare($sql);
// query parameter value(s)
$params = array(
5,
'Homer'
);
$sth->execute($params);
while ($row = $sth->fetch()) {
echo $row['AgentName'] . "\r\n";
}
Run Code Online (Sandbox Code Playgroud)
您确定 odbc 连接器已正确创建吗?如果没有,请再次检查“创建 ODBC 连接”步骤
编辑:没有来自php.net的 DSN 的连接
// 微软访问
$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=$mdbFilename", $user, $password);
Run Code Online (Sandbox Code Playgroud)
在您的情况下,如果您的文件名是 Northwind 并且文件扩展名是 mdb:
$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=northwind", "", "");
Run Code Online (Sandbox Code Playgroud)