php数据库连接到Access

Posted

技术标签:

【中文标题】php数据库连接到Access【英文标题】:php database connection to Access 【发布时间】:2010-06-04 10:14:14 【问题描述】:

我想在不使用 mysql 等 ODBC 连接的情况下将 php 连接到 Access。请给我解决方案。 以及如何连接 SQL Oracle 和其他数据库。

【问题讨论】:

【参考方案1】:

您可以使用 COM 类与 Windows 机器上的 Access 进行交互:

http://us2.php.net/manual/en/ref.com.php

http://code.activestate.com/recipes/163447/

【讨论】:

【参考方案2】:

连接到 ODBC odbc_connect() 函数用于连接到 ODBC 数据源。该函数有四个参数:数据源名称、用户名、密码和可选的游标类型。

odbc_exec() 函数用于执行 SQL 语句。

示例 以下示例创建一个到名为northwind 的DSN 的连接,没有用户名和密码。然后它创建一个 SQL 并执行它:

$conn=odbc_connect('northwind','',''); $sql="SELECT * FROM 客户";

检索记录 odbc_fetch_rows() 函数用于从结果集中返回记录。如果该函数能够返回行,则该函数返回 true,否则返回 false。

该函数有两个参数:ODBC 结果标识符和一个可选的行号:

odbc_fetch_row($rs)

从记录中检索字段 odbc_result() 函数用于从记录中读取字段。此函数有两个参数:ODBC 结果标识符和字段编号或名称。

下面的代码行返回记录中第一个字段的值:

$compname=odbc_result($rs,1);

下面的代码行返回一个名为“CompanyName”的字段的值:

$compname=odbc_result($rs,"CompanyName");

关闭 ODBC 连接 odbc_close() 函数用于关闭 ODBC 连接。

odbc_close($conn);

以下示例显示如何创建连接:

ODBC 示例 下面的例子展示了如何首先创建一个数据库连接,然后是一个结果集,然后在 html 表中显示数据。

<html>
<body><?php
$conn=odbc_connect('northwind','','');
if (!$conn)
exit("Connection Failed: " . $conn);
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);
if (!$rs)
exit("Error in SQL");
echo "<table><tr>";
echo "<th>Companyname</th>";
echo "<th>Contactname</th></tr>";
while (odbc_fetch_row($rs))

$compname=odbc_result($rs,"CompanyName");
$conname=odbc_result($rs,"ContactName");
echo "<tr><td>$compname</td>";
echo "<td>$conname</td></tr>";

odbc_close($conn);
echo "</table>";
?></body>
</html>

【讨论】:

【参考方案3】:

如果你想得到体面的答案,你应该多花一点时间来写你的问题。

您可以使用数据库抽象层,例如 PDO 或 ADODB。这样,您就可以编写相同的代码,并在许多不同的数据库上运行。

关于 Access,我怀疑有没有办法在没有 ODBC 的情况下访问它。这个要求有什么理由吗?

【讨论】:

以上是关于php数据库连接到Access的主要内容,如果未能解决你的问题,请参考以下文章

PHP:远程连接到 MS Access 2013

使用 PHP 连接到 MS Access DB

使用PHP连接到Access数据库

如何在 PHP7 中连接到 MS Access 数据库?

PHP 远程连接到 MS Access 2016 数据库

在 Linux 上从 PHP 连接到 MS Access 数据库