PDO::__construct
Crear una conexión a una base de datos de SQL Server.
Sintaxis
PDO::__construct($dsn [,$username [,$password [,$driver_options ]]] )
Parámetros
$dsn: una cadena que contiene el nombre de prefijo (siempre sqlsrv
), dos puntos y la palabra clave Server. Por ejemplo, "sqlsrv:server=(local)"
. También puede especificar otras palabras clave de conexión. Consulte Connection Options para obtener una descripción de la palabra clave Server y del resto de las palabras clave de conexión. $dsn está entre comillas, por lo que no se debe entrecomillar cada palabra clave de conexión.
$username: Opcional. Una cadena que contiene el nombre del usuario. Para establecer la conexión utilizando la autenticación de SQL Server, especifique el id. de inicio de sesión. Para establecer la conexión utilizando la autenticación de Windows, especifique ""
.
$password: opcional. Una cadena que contiene la contraseña del usuario. Para establecer la conexión utilizando la autenticación de SQL Server, especifique la contraseña. Para establecer la conexión utilizando la autenticación de Windows, especifique ""
.
$driver_options: Opcional. Puede especificar atributos del administrador de controladores de PDO y atributos de controladores específicos de Controladores de Microsoft para PHP para SQL Server: PDO::SQLSRV_ATTR_ENCODING, PDO::SQLSRV_ATTR_DIRECT_QUERY. Los atributos no válidos no generan excepciones, solo lo harán cuando se especifican con PDO::setAttribute.
Valor devuelto
Devuelve un objeto de PDO. Si se produce un error, devuelve un objeto PDOException.
Excepciones
PDOException
Observaciones
Puede cerrar un objeto de conexión estableciendo el valor de la instancia en Null.
Después de una conexión, PDO::errorCode muestra 01000 en lugar de 00000.
Si, por cualquier motivo, se produce un error en PDO::__construct, se genera una excepción, aunque PDO::ATTR_ERRMODE esté establecido en PDO::ERRMODE_SILENT.
En la versión 2.0 de los Controladores de Microsoft para PHP para SQL Server, se agregó compatibilidad con PDO.
Ejemplo con base de datos
En este ejemplo se muestra cómo conectarse a un servidor mediante la autenticación de Windows y especificar una base de datos.
<?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;
?>
Ejemplo sin base de datos
En este ejemplo se muestra cómo conectarse a un servidor especificando la base de datos más adelante.
<?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;
?>