sqlsrv_connect

Crée une ressource de connexion et ouvre une connexion. Par défaut, la connexion est tentée à l'aide de l'authentification Windows.

Syntaxe

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

Paramètres

$serverName : chaîne spécifiant le nom du serveur auquel une connexion est établie. Un nom d'instance (par exemple « monServeur\nomInstance ») ou un numéro de port (par exemple « monServeur, 1521 ») peut être inclus dans le cadre de cette chaîne. Pour une description complète des options disponibles pour ce paramètre, consultez le mot clé Serveur dans la section Mots clés de chaîne de connexion du pilote ODBC de la rubrique Utilisation de mots clés de chaîne de connexion avec SQL Native Client.

$connectionInfo [OPTIONNEL] : array associatif qui contient les attributs de connexion (par exemple array("Database" => "AdventureWorks")). Le tableau suivant décrit les clés prises en charge pour le tableau :

Clé Valeur Description Valeur par défaut

APP

Chaîne

Nom d'application utilisé dans le suivi.

Aucune valeur définie.

CharacterSet

Chaîne

Spécifie le jeu de caractères utilisé pour envoyer des données au serveur. Cette clé est une nouveauté du Pilote SQL Server pour PHP version 1.1.

Pour plus d'informations, consultez Procédure : envoyer et récupérer des données UTF-8 grâce à la prise en charge UTF-8 intégrée.

SQLSRV_ENC_CHAR

ConnectionPooling

1 ou true pour l'activation du regroupement de connexions.

0 ou false pour la désactivation du regroupement de connexions.

Spécifie si la connexion est assignée à partir d'un regroupement de connexions (1 ou true) ou non (0 ou false).

true (1)

Database

Chaîne

Spécifie le nom de la base de données utilisée pour la connexion établie1.

Base de données par défaut de la connexion utilisée.

Encrypt

1 ou true pour l'activation du chiffrement.

0 ou false pour la désactivation du chiffrement.

Spécifie si la communication avec SQL Server est chiffrée (1 ou true) ou non chiffrée (0 ou false)2.

false (0)

Failover_Partner

Chaîne

Spécifie le serveur et l'instance du miroir de la base de données (s'il est activé et configuré) à utiliser lorsque le serveur principal n'est pas disponible.

Aucune valeur définie.

LoginTimeout

Entier

Spécifie le nombre de secondes d'attente avant l'échec de la tentative de connexion.

Aucun délai d'attente.

MultipleActiveResultSets

1 ou true pour l'utilisation de MARS (Multiple Active Result Sets).

0 ou false pour la désactivation de MARS (Multiple Active Result Sets).

Vous permet de désactiver ou d'activer explicitement la prise en charge de MARS (Multiple Active Result Sets). Cette clé est une nouveauté du Pilote SQL Server pour PHP version 1.1.

Pour plus d'informations, consultez Procédure : désactiver MARS (Multiple Active Resultsets).

false (0)

PWD

Chaîne

Spécifie le mot de passe associé à l'ID d'utilisateur à employer lors d'une connexion via l'authentification SQL Server3.

Aucune valeur définie.

QuotedId

1 ou true pour utiliser les règles SQL-92.

0 ou false pour utiliser les règles héritées.

Spécifie s'il faut utiliser les règles SQL-92 pour les identificateurs entre guillemets (1 ou true) ou s'il faut utiliser les règles Transact-SQL héritées (0 ou false).

true (1)

ReturnDatesAsStrings

1 ou true pour retourner les types de date et d'heure sous forme de chaînes.

0 ou false pour retourner les types de date et d'heure sous forme de types PHP DateTime.

Vous pouvez récupérer les types de date et d'heure (datetime, date, time, datetime2 et datetimeoffset) sous forme de chaînes ou de types PHP.

Pour plus d'informations, consultez Procédure : récupérer le type de date et d'heure sous forme de chaînes.

false

TraceFile

Chaîne

Chemin d'accès au fichier utilisé pour les données de trace.

Aucune valeur définie.

TraceOn

1 ou true pour activer le suivi.

0 ou false pour désactiver le suivi.

Spécifie si le suivi ODBC est activé (1 ou true) ou désactivé (0 ou false) pour la connexion établie.

false (0)

TransactionIsolation

SQLSRV_TXN_READ_UNCOMMITTED,

SQLSRV_TXN_READ_COMMITTED,

SQLSRV_TXN_REPEATABLE_READ,

SQLSRV_TXN_SNAPSHOT,

SQLSRV_TXN_SERIALIZABLE

Spécifie le niveau d'isolation de la transaction.

SQLSRV_TXN_READ_COMMITTED

TrustServerCertificate

1 ou true pour approuver le certificat.

0 ou false pour désapprouver le certificat.

Spécifie si le client doit approuver (1 ou true) ou rejeter (0 ou false) un certificat de serveur auto-signé.

false (0)

UID

Chaîne

Spécifie l'ID d'utilisateur à employer lors d'une connexion via l'authentification SQL Server3.

Aucune valeur définie.

WSID

Chaîne

Nom de l'ordinateur du suivi.

Aucune valeur définie.

1. Toutes les requêtes exécutées sur la connexion établie sont envoyées à la base de données spécifiée par l'attribut Database. Toutefois, les données des autres bases de données sont accessibles via l'utilisation d'un nom complet si l'utilisateur dispose des autorisations appropriées. Par exemple, si la base de données master est définie avec l'attribut de connexion Database, il est toujours possible d'exécuter une requête Transact-SQL qui accède à la table AdventureWorks.HumanResources.Employee à l'aide d'un nom complet.

2. L'activation d'Encryption peut avoir un impact sur les performances de certaines applications en raison de la charge de traitement requise pour le chiffrement des données.

3. Les attributs UID et PWD doivent être définis tous les deux lors d'une connexion via l'authentification SQL Server.

De nombreuses clés prises en charge sont des attributs de chaîne de connexion ODBC. Pour plus d'informations sur les chaînes de connexion ODBC, consultez Using Connection String Keywords with SQL Native Client (en anglais).

Valeur de retour

Ressource de connexion PHP. Si une connexion ne peut pas être correctement créée et ouverte, false est retourné.

Notes

Si les valeurs qui correspondent aux clés UID et PWD ne sont pas spécifiées dans le paramètre optionnel $connectionInfo, la connexion est tentée à l'aide de l'authentification Windows. Pour plus d'informations sur la connexion au serveur, consultez Procédure : se connecter à l'aide de l'authentification Windows et Procédure : se connecter à l'aide de l'authentification SQL Server.

Exemple

L'exemple suivant crée et ouvre une connexion à l'aide de l'authentification Windows. L'exemple suppose que SQL Server et la base de données AdventureWorks sont installés sur l'ordinateur local. Toutes les données de sortie sont écrites dans la console lorsque l'exemple est exécuté à partir de la ligne de commande.

<?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);
?>

Voir aussi

Concepts

À propos des exemples de code dans la documentation

Autres ressources

Référence de l'API (Pilote SQL Server pour PHP)
Connexion au serveur