Compartir a través de


sqlsrv_connect

Crea un recurso de conexión y abre una conexión. De forma predeterminada, la conexión se intenta usando la autenticación de Windows.

Sintaxis

sqlsrv_connect( string $serverName [, array $connectionInfo])

Parámetros

$serverName: cadena que especifica el nombre del servidor con el que se está estableciendo una conexión. Se pueden incluir un nombre de instancia (por ejemplo, "miServidor\nombreDeInstancia") o un número de puerto (por ejemplo, "miServidor, 1521") como parte de esta cadena. Para obtener una descripción completa de las opciones disponibles de este parámetro, vea la palabra clave Servidor en la sección Palabras clave de la cadena de conexión del controlador ODBC de Usar palabras clave de cadena de conexión con SQL Server Native Client.

$connectionInfo [OPCIONAL]: array asociativa que contiene atributos de conexión (por ejemplo, array("Database" => "AdventureWorks")). En la siguiente tabla se describen las claves admitidas para la matriz:

Clave Valor Descripción Valor predeterminado

APP

Cadena

Nombre de aplicación que se usa en el seguimiento.

Ningún valor establecido.

CharacterSet

Cadena

Especifica el juego de caracteres usado para enviar datos al servidor. Esta clave es nueva en Controlador de SQL Server para PHP versión 1.1.

Para obtener más información, vea Cómo enviar y recuperar datos UTF-8 mediante la compatibilidad integrada con UTF-8.

SQLSRV_ENC_CHAR

ConnectionPooling

1 o true para agrupación de conexiones activada.

0 o false para agrupación de conexiones desactivada.

Especifica si la conexión se asigna desde una agrupación de conexiones (1 o true) o no (0 o false).

true (1)

Database

Cadena

Especifica el nombre de la base de datos en uso para la conexión que se está estableciendo1.

La base de datos predeterminada para el inicio de sesión que se utiliza.

Encrypt

1 o true para cifrado activado.

0 o false para cifrado desactivado.

Especifica si la comunicación con SQL Server está cifrada (1 o true) o sin cifrar (0 o false)2.

false (0)

Failover_Partner

Cadena

Especifica el servidor y la instancia del reflejo de la base de datos (si está habilitada y configurada) que se usan cuando el servidor principal no está disponible.

Ningún valor establecido.

LoginTimeout

Entero

Especifica el número de segundos de espera antes de producirse un error al intentar la conexión.

Sin tiempo de espera.

MultipleActiveResultSets

1 o true para usar conjuntos de resultados activos múltiples.

0 o false para deshabilitar los conjuntos de resultados activos múltiples.

Permite deshabilitar o habilitar de forma explícita la compatibilidad con los conjuntos de resultados activos múltiples (MARS). Esta clave es nueva en Controlador de SQL Server para PHP versión 1.1.

Para obtener más información, vea Cómo deshabilitar los conjuntos de resultados activos múltiples (MARS).

false (0)

PWD

Cadena

Especifica la contraseña asociada con el identificador de usuario que se va a usar al conectar con la autenticación de SQL Server 3.

Ningún valor establecido.

QuotedId

1 o true para usar las reglas de SQL-92.

0 o false para usar las reglas heredadas.

Especifica si se van a usar las reglas de SQL-92 para identificadores entrecomillados (1 o true) o las reglas heredadas de Transact-SQL (0 o false).

true (1)

ReturnDatesAsStrings

1 o true para devolver los tipos de fecha y hora en forma de cadena.

0 o false para devolver los tipos de fecha y hora como tipos PHP DateTime.

Los tipos de fecha y hora (datetime, date, time, datetime2 y datetimeoffset) se pueden recuperar en forma de cadena o como tipos PHP.

Para obtener más información, vea Cómo recuperar los tipos de fecha y hora en forma de cadena.

false

TraceFile

Cadena

Ruta de acceso del archivo que se usa para los datos de seguimiento.

Ningún valor establecido.

TraceOn

1 o true para habilitar el seguimiento.

0 o false para deshabilitar el seguimiento.

Especifica si el seguimiento de ODBC está habilitado (1 o true) o deshabilitado (0 o false) para la conexión que se está estableciendo.

false (0)

TransactionIsolation

SQLSRV_TXN_READ_UNCOMMITTED,

SQLSRV_TXN_READ_COMMITTED,

SQLSRV_TXN_REPEATABLE_READ,

SQLSRV_TXN_SNAPSHOT,

SQLSRV_TXN_SERIALIZABLE

Especifica el nivel de aislamiento de transacción.

SQLSRV_TXN_READ_COMMITTED

TrustServerCertificate

1 o true para confiar en el certificado.

0 o false para no confiar en el certificado.

Especifica si el cliente debe confiar (1 o true) o rechazar (0 o false) un certificado de servidor autofirmado.

false (0)

UID

Cadena

Especifica el identificador de usuario que se va a usar al conectar con la autenticación de SQL Server 3.

Ningún valor establecido.

WSID

Cadena

Nombre del equipo para el seguimiento.

Ningún valor establecido.

1. Todas las consultas ejecutadas en la conexión establecida se realizarán en la base de datos especificada mediante el atributo Database. Sin embargo, se puede tener acceso a los datos de otras bases de datos mediante un nombre completo si el usuario tiene los permisos adecuados. Por ejemplo, si la base de datos master está establecida con el atributo de conexión Database, se puede ejecutar una consulta de Transact-SQL que tenga acceso a la tabla AdventureWorks.HumanResources.Employee mediante el nombre completo.

2. Habilitar Encryption puede afectar al rendimiento de algunas aplicaciones debido a la sobrecarga de cálculo necesaria para cifrar los datos.

3. Los atributos UID y PWD se deben establecer al conectar con la autenticación de SQL Server.

Muchas de las claves admitidas son atributos de cadenas de conexión ODBC. Para obtener información acerca de las cadenas de conexión ODBC, vea Using Connection String Keywords with SQL Native Client.

Valor devuelto

Un recurso de conexión de PHP. Si una conexión no se puede crear y abrir correctamente, se devuelve false.

Notas

Si los valores de las claves UID y PWD no se especifican en el parámetro opcional $connectionInfo, se intentará la conexión usando la autenticación de Windows. Para obtener más información acerca de cómo conectar con el servidor, vea Cómo conectar con la autenticación de Windows y Cómo conectar con la autenticación de SQL Server.

Ejemplo

En el ejemplo siguiente se crea y se abre una conexión usando la autenticación de Windows. En el ejemplo se supone que SQL Server y la base de datos AdventureWorks están instalados en el equipo local. Cuando se ejecuta el ejemplo desde la línea de comandos, todos los resultados se escriben en la consola.

<?php
/*
Connect to the local server using Windows Authentication and specify
the AdventureWorks database as the database in use. To connect using
SQL Server Authentication, set values for the "UID" and "PWD"
 attributes in the $connectionInfo parameter. For example:
$connectionInfo = array("UID" => $uid, "PWD" => $pwd)); 
*/
$serverName = "(local)";
$connectionInfo = array( "Database"=>"AdventureWorks");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn )
{
     echo "Connection established.\n";
}
else
{
     echo "Connection could not be established.\n";
     die( print_r( sqlsrv_errors(), true));
}

//-----------------------------------------------
// Perform operations with connection.
//-----------------------------------------------

/* Close the connection. */
sqlsrv_close( $conn);
?>

Vea también

Conceptos

Acerca de ejemplos de código en la documentación

Otros recursos

Referencia de la API (Controlador SQL Server para PHP)
Conectar con el servidor