array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.odbc-connect.php', 1 => 'odbc_connect', ), 'up' => array ( 0 => 'ref.uodbc.php', 1 => 'Функции ODBC', ), 'prev' => array ( 0 => 'function.odbc-commit.php', 1 => 'odbc_commit', ), 'next' => array ( 0 => 'function.odbc-connection-string-is-quoted.php', 1 => 'odbc_connection_string_is_quoted', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/uodbc/functions/odbc-connect.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_connect — Соединяет с источником данных
$dsn
,$user
,$password
,$cursor_option
= SQL_CUR_USE_DRIVER
Идентификатор соединения, возвращаемый этой функцией, необходим для других ODBC-функций. Вы можете держать одновременно открытыми несколько соединений.
Некоторые ODBC-драйверы, выполняющие сложные хранимые процедуры, могут обрываться с ошибкой типа: "Cannot open a cursor on a stored procedure that has anything other than a single select statement in it". Использование SQL_CUR_USE_ODBC поможет избежать появления этой ошибки. Также некоторые драйверы не поддерживают необязательный параметр row_number в odbc_fetch_row(). SQL_CUR_USE_ODBC также может помочь в этом случае.
dsn
Database Source Name (DSN) для соединения. В качестве альтернативы можно производить соединение и без DSN.
user
Имя.
password
Пароль.
cursor_option
Устанавливает тип используемого курсора для соединения. Обычно этот параметр не нужен, но может оказаться полезным для обхода проблем с некоторыми драйверами ODBC.
Следующие константы определены для типа курсора:
Возвращает соединение ODBC или false
, если возникла ошибка.
Пример #1 Соединения без DSN
<?php
// Microsoft SQL Server используя SQL Native Client 10.0 ODBC Driver - позволяет соединяться
// с SQL 7, 2000, 2005 и 2008
$connection = odbc_connect("Driver={SQL Server Native Client 10.0};Server=$server;Database=$database;", $user, $password);
// Microsoft Access
$connection = odbc_connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=$mdbFilename", $user, $password);
// Microsoft Excel
$excelFile = realpath('C:/ExcelData.xls');
$excelDir = dirname($excelFile);
$connection = odbc_connect("Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=$excelFile;DefaultDir=$excelDir" , '', '');
?>