PDO::__construct
Создает подключение к базе данных SQL Server.
Синтаксис
PDO::__construct($dsn [,$username [,$password [,$driver_options ]]] )
Параметры
$dsn: строка, содержащая имя префикса (всегда sqlsrv
), двоеточие и ключевое слово Server. Например, "sqlsrv:server=(local)"
. При необходимости можно другие ключевые слова подключения. Описание ключевого слова Server и других ключевых слов подключения см. в статье Connection Options . Вся $dsn берется в кавычки, поэтому каждое ключевое слово подключения заключать в отдельные кавычки не нужно.
$username: необязательно. Строка, содержащая имя пользователя. Чтобы подключиться с помощью проверки подлинности SQL Server, укажите идентификатор входа. Для подключения с использованием проверки подлинности Windows укажите ""
.
$password: необязательно. Строка, содержащая пароль пользователя. Чтобы подключиться с помощью проверки подлинности SQL Server, укажите пароль. Для подключения с использованием проверки подлинности Windows укажите ""
.
$driver_options: необязательно. Можно указать атрибуты диспетчера драйверов PDO и драйверы Майкрософт для PHP для конкретных атрибутов драйвера SQL Server — PDO::SQLSRV_ATTR_ENCODING, PDO::SQLSRV_ATTR_DIRECT_QUERY. Недопустимый атрибут не вызывает исключение. Недопустимые атрибуты вызывают исключения при указании PDO::setAttribute.
Возвращаемое значение
Возвращает объект PDO. В случае сбоя возвращает объект PDOException.
Исключения
PDOException
Замечания
Объект соединения можно закрыть, установив для экземпляра значение NULL.
После подключения PDO::errorCode отображает 01000 вместо 00000.
Если PDO::__construct по какой-то причине не срабатывает, выдается исключение, даже если для PDO::ATTR_ERRMODE задано значение PDO::ERRMODE_SILENT.
Добавлена поддержка PDO версии 2.0 драйверов Майкрософт для PHP для SQL Server.
Пример с базой данных
Этот пример показывает, как подключиться к серверу с использованием проверки подлинности Windows, и указать базу данных.
<?php
$c = new PDO( "sqlsrv:Server=(local) ; Database = AdventureWorks ", "", "", array(PDO::SQLSRV_ATTR_DIRECT_QUERY => true));
$query = 'SELECT * FROM Person.ContactType';
$stmt = $c->query( $query );
while ( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ) {
print_r( $row );
}
$c = null;
?>
Пример без базы данных
Этот пример показывает, как подключиться к серверу, указав базу данных позднее.
<?php
$c = new PDO( "sqlsrv:server=(local)");
$c->exec( "USE AdventureWorks2022" );
$query = 'SELECT * FROM Person.ContactType';
$stmt = $c->query( $query );
while ( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ){
print_r( $row );
}
$c = null;
?>