PHP База данных ODBC


ODBC — это интерфейс прикладного программирования (API), который позволяет нам подключаться к источнику данных (например, к базе данных MS Access).


Создание подключения ODBC

Через подключение ODBC можно подключиться к любой базе данных на любом компьютере в вашей сети, если подключение ODBC доступно.

Вот как создать подключение ODBC к базе данных MS Access:

  1. Откройте в Панели управления значокАдминистрирование.
  2. Дважды щелкните значокИсточники данных (ODBC).
  3. Выберите вкладкуСистемный DSN.
  4. На вкладке Системный DSN нажмитеВыбрать。
  5. ВыберитеMicrosoft Access Driver. НажмитеГотово。
  6. На следующем экране нажмитеВыбрать, чтобы найти базу данных.
  7. Присвойте базе данныхимя источника данных (DSN)。
  8. НажмитеОК。

Обратите внимание, что эту настройку необходимо выполнить на компьютере, где размещен ваш веб-сайт. Если вы запускаете Internet Information Services (IIS) на своем компьютере, приведенные выше инструкции вступят в силу, но если ваш веб-сайт находится на удаленном сервере, у вас должен быть физический доступ к этому серверу, или попросите своего хостинг-провайдера настроить DSN для вас.


Подключение к ODBC

Функция odbc_connect() используется для подключения к источнику данных ODBC. Эта функция имеет четыре параметра: имя источника данных, имя пользователя, пароль и необязательный тип курсора.

Функция odbc_exec() используется для выполнения SQL-запросов.

Пример

Следующий пример создаёт подключение к DSN с именем northwind без имени пользователя и пароля. Затем он создаёт и выполняет SQL-запрос:

$conn=odbc_connect('northwind','','');
$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);


Извлечение записей

Функция odbc_fetch_row() используется для возврата записей из результирующего набора. Если строка может быть возвращена, функция возвращает 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("连接失败: " . $conn);
}

$sql="SELECT * FROM customers";
$rs=odbc_exec($conn,$sql);

if (!$rs)
{
    exit("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>
Другие расширения