Partager via


Options de connexion

Télécharger le pilote PHP

Cette rubrique répertorie les options autorisées dans le tableau associatif (durant l’utilisation de sqlsrv_connect dans le pilote SQLSRV), ou les mots clés autorisés dans le nom de source de données (dsn) (durant l’utilisation de PDO::__construct dans le pilote PDO_SQLSRV).

Tableau des options de connexion

Clé Valeur Description Default
AccessToken Chaîne Chaîne d’octets du jeton d’accès Microsoft Entra extrait d’une réponse JSON OAuth.

La chaîne de connexion ne doit pas contenir un ID d’utilisateur, un mot de passe ou le mot clé Authentication. Pour plus d’informations, consultez Connexion à l’aide de l’authentification Microsoft Entra.
Non défini.
APP String Spécifie le nom de l’application utilisé dans le suivi. Non défini.
ApplicationIntent String Déclare le type de la charge de travail de l'application lors de la connexion à un serveur. Les valeurs possibles sont ReadOnly et ReadWrite.

Pour plus d’informations sur Pilotes Microsoft pour PHP pour la prise en charge SQL Server pour les groupes de disponibilité Always On, consultez Prise en charge de la haute disponibilité et de la récupération d’urgence.
Lecture/écriture
AttachDBFileName String Spécifie le fichier de base de données que le serveur doit attacher. Non défini.
Authentification Une des chaînes suivantes :

SqlPassword

ActiveDirectoryPassword

ActiveDirectoryMsi

ActiveDirectoryServicePrincipal
Spécifie le mode d'authentification.

Pour plus d’informations, consultez Connexion à l’aide de l’authentification Microsoft Entra.
Non défini.
CharacterSet

(non pris en charge dans le pilote PDO_SQLSRV)
String Spécifie le jeu de caractères utilisé pour envoyer des données au serveur.

Les valeurs possibles sont SQLSRV_ENC_CHAR et UTF-8. Pour plus d’informations, consultez Procédure : Envoyer et récupérer des données UTF-8 à l’aide de la prise en charge UTF-8 intégrée.
SQLSRV_ENC_CHAR
ColumnEncryption Une des chaînes suivantes :

Activé

Désactivé

Chaîne identifiant le protocole d’attestation et l’URL d’attestation de l’enclave
Spécifie si la fonctionnalité Always Encrypted est activée ou non. Si un protocole d’attestation et une URL sont spécifiés, la fonctionnalité Always Encrypted avec enclaves sécurisées est activée, à condition que les autres conditions soient remplies, comme décrit ici. Désactivé
ConnectionPooling 1 ou true pour activer le regroupement de connexions.

0 ou false pour désactiver le regroupement de connexions.
Spécifie si la connexion est attribuée à partir d’un pool de connexions (1 ou true) ou non (0 ou false).1 true (1)
ConnectRetryCount Entier compris entre 0 et 255 (inclus) Nombre maximal de tentatives de rétablissement d’une connexion interrompue avant abandon. Par défaut, une seule tentative est effectuée pour rétablir une connexion interrompue. La valeur 0 signifie qu’aucune reconnexion n’est tentée. 1
ConnectRetryInterval Entier compris entre 1 et 60 (inclus) Durée, en secondes, entre les tentatives de rétablissement d’une connexion. L’application tente de se reconnecter immédiatement en cas de détection d’une connexion interrompue, puis attend ConnectRetryInterval secondes avant de réessayer. Ce mot clé est ignoré si ConnectRetryCount est égal à 0. 10
Base de données String Spécifie le nom de la base de données utilisé pour la connexion établie2. Base de données par défaut pour la connexion utilisée.
DecimalPlaces

(non pris en charge dans le pilote PDO_SQLSRV)
Entier compris entre 0 et 4 (inclus) Spécifie le nombre de décimales pour le formatage des valeurs monétaires extraites.

Cette option fonctionne uniquement quand FormatDecimals a la valeur true. Les entiers négatifs et les valeurs supérieures à 4 sont ignorés.
Précision et échelle par défaut
Pilote String Spécifie le pilote Microsoft ODBC utilisé pour communiquer avec SQL Server.

Les valeurs possibles sont les suivantes :
ODBC Driver 18 for SQL Server
ODBC Driver 17 for SQL Server
ODBC Driver 13 for SQL Server
ODBC Driver 11 pour SQL Server (Windows uniquement).
Lorsque le mot clé Driver n’est pas spécifié, les pilotes Microsoft SQL Server pour PHP tentent de trouver le ou les pilotes Microsoft ODBC pris en charge dans le système, en commençant par la dernière version d’ODBC, et ainsi de suite.
Encrypt (Chiffrer) 1 ou true pour activer le chiffrement.

0 or false pour désactiver le chiffrement.
Spécifie si la communication avec SQL Server est chiffrée (1 ou true) ou non (0 ou false)3. false (0)
Failover_Partner String Spécifie le serveur et l’instance de mise en miroir de la base de données (si elle est activée et configurée) à utiliser quand le serveur principal n’est pas disponible.

L’utilisation de Failover_Partner avec MultiSubnetFailoverest soumise à des restrictions. Pour plus d’informations, consultez Prise en charge de la haute disponibilité et de la récupération d'urgence.

Cette option n’est pas prise en charge sur Linux ou macOS, car la mise en miroir de bases de données n’est pas prise en charge par le pilote ODBC sur Linux ou macOS. Utilisez plutôt des groupes de disponibilité Always On et définissez les options MultiSubnetFailover et TransparentNetworkIPResolution.
Non défini.
FormatDecimals

(non pris en charge dans le pilote PDO_SQLSRV)
1 ou true pour mettre en forme les chaînes décimales récupérées.

0 ou false pour le comportement de mise en forme des décimales par défaut.
Spécifie s’il faut ajouter des zéros au début des chaînes décimales si nécessaire et active l’option DecimalPlaces pour mettre en forme les types monétaires. Si vous conservez la valeur false, le comportement par défaut qui consiste à retourner la précision exacte et à omettre les zéros non significatifs pour les valeurs inférieures à 1 est utilisé.

Pour plus d’informations, voir Mettre en forme des chaînes décimales et des valeurs monétaires.
false (0)
KeyStoreAuthentication KeyVaultPassword

KeyVaultClientSecret
Méthode d'authentification pour accéder à Azure Key Vault. Contrôle le type d’informations d’identification utilisé avec KeyStorePrincipalId et KeyStoreSecret. Pour plus d’informations, consultez Utilisation d’Azure Key Vault. Non défini.
KeyStorePrincipalId String Identificateur du compte qui cherche à accéder à Azure Key Vault.

Si KeyStoreAuthentication correspond à KeyVaultPassword, cette valeur doit être un nom d’utilisateur Microsoft Entra.

Si KeyStoreAuthentication est KeyVaultClientSecret, cette valeur doit être un ID client de l‘application.
Non défini.
KeyStoreSecret String Secret des informations d'identification du compte qui cherche à accéder à Azure Key Vault.

Si KeyStoreAuthentication correspond à KeyVaultPassword, cette valeur doit être un mot de passe Microsoft Entra.

Si KeyStoreAuthentication est KeyVaultClientSecret, cette valeur doit être un secret client de l‘application.
Non défini.
Langage String Spécifie la langue des messages retournés par le serveur. Les langues disponibles sont répertoriées dans le tableau sys.syslanguages.

Cette option n’affecte pas la langue utilisée par les pilotes, car ils sont actuellement disponibles uniquement en anglais, et cela n’affecte pas la langue du pilote ODBC sous-jacent, dont la langue est déterminée par la version localisée installée sur le système client. Par conséquent, la modification de ce paramètre peut entraîner le renvoi de messages dans différentes langues, selon qu’ils proviennent du pilote PHP, du pilote ODBC ou de SQL Server.
La valeur par défaut est la langue définie dans SQL Server.
LoginTimeout Entier (pilote SQLSRV)

Chaîne (pilote PDO_SQLSRV)
Spécifie le nombre de secondes qui doivent s’écouler avant l’échec de la tentative de connexion. Aucun délai d’expiration.
MultipleActiveResultSets 1 ou true pour utiliser les jeux de résultats actifs multiples.

0 ou false pour désactiver les jeux de résultats actifs multiples.
Désactive ou active explicitement la prise en charge de MARS (Multiple Active Result Sets).

Pour plus d’informations, consultez Procédure : Désactiver Multiple Active Result Sets (MARS).
true (1)
MultiSubnetFailover String Spécifiez toujours multiSubnetFailover=yes lors de la connexion à l'écouteur de groupe de disponibilité d'un groupe de disponibilité SQL Server 2012 (11.x) ou d'une instance de cluster de basculement SQL Server 2012 (11.x). multiSubnetFailover=yes configure le Pilotes Microsoft SQL Server pour PHP pour accélérer la détection et la connexion au serveur (actuellement) actif. Les valeurs possibles sont yes et no.

Pour plus d’informations sur Pilotes Microsoft pour PHP pour la prise en charge SQL Server pour les groupes de disponibilité Always On, consultez Prise en charge de la haute disponibilité et de la récupération d’urgence.
Non
PWD

(non pris en charge dans le pilote PDO_SQLSRV)
String Spécifie le mot de passe associé à l’ID utilisateur à utiliser lors de la connexion avec l’authentification SQL Server4. Non défini.
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 utiliser les règles Transact-SQL héritées (0 ou false). true (1)
ReturnDatesAsStrings

(non pris en charge dans le pilote PDO_SQLSRV)
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 comme types PHP DateTime .
Récupère les types de date et d’heure (datetime, smalldatetime, date, time, datetime2 et datetimeoffset) sous forme de chaînes ou en tant que types PHP. Pour plus d’informations, consultez Procédure : Récupérer des types date et heure sous forme de chaînes à l’aide du pilote SQLSRV.

Sauf indication contraire, les dates sont retournées sous forme de chaînes quand vous utilisez le pilote PDO_SQLSRV. Pour plus d’informations, consultez Procédure : Récupérer des types date et heure sous forme d’objets datetime PHP à l’aide du pilote PDO_SQLSRV.
false
Défilement String “buffered” indique que vous souhaitez un curseur côté client (mis en mémoire tampon), ce qui vous permet de mettre en cache un jeu de résultats entier en mémoire. Pour plus d’informations, consultez Types de curseur (pilote SQLSRV). Curseur avant uniquement
Serveur

(non pris en charge dans le pilote SQLSRV)
String Instance de SQL Server avec laquelle la connexion sera établie.

Vous pouvez également spécifier un nom de réseau virtuel pour vous connecter à un groupe de disponibilité Always On. Pour plus d’informations sur Pilotes Microsoft pour PHP pour la prise en charge SQL Server pour les groupes de disponibilité Always On, consultez Prise en charge de la haute disponibilité et de la récupération d’urgence.
Server est un mot clé obligatoire (mais il ne doit pas obligatoirement être le premier mot clé dans la chaîne de connexion). Si aucun nom de serveur n’est passé au mot clé, une tentative de connexion à l’instance locale est effectuée.

La valeur transmise à Server peut être le nom d’une instance SQL Server ou l’adresse IP de l’instance. Si vous le souhaitez, vous pouvez spécifier un numéro de port (par exemple, sqlsrv:server=(local),1033).

À compter de la version 3.0 du Pilotes Microsoft SQL Server pour PHP , vous pouvez aussi spécifier une instance de base de données locale avec server=(localdb)\instancename. Pour plus d’informations, consultez Prise en charge de LocalDB.
TraceFile String Spécifie le chemin du fichier utilisé pour les données de trace. Non défini.
TraceOn 1 ou true pour activer le traçage.

0 ou false pour désactiver le traçage.
Spécifie si le traçage ODBC est activé (1 ou true) ou désactivé (0 or false) pour la connexion établie. false (0)
TransactionIsolation Le pilote SQLSRV utilise les valeurs suivantes :

SQLSRV_TXN_READ_UNCOMMITTED

SQLSRV_TXN_READ_COMMITTED

SQLSRV_TXN_REPEATABLE_READ

SQLSRV_TXN_SNAPSHOT

SQLSRV_TXN_SERIALIZABLE

Le pilote PDO_SQLSRV utilise les valeurs suivantes :

PDO::SQLSRV_TXN_READ_UNCOMMITTED

PDO::SQLSRV_TXN_READ_COMMITTED

PDO::SQLSRV_TXN_REPEATABLE_READ

PDO::SQLSRV_TXN_SNAPSHOT

PDO::SQLSRV_TXN_SERIALIZABLE
Spécifie le niveau d’isolation de la transaction.

Pour plus d’informations sur l’isolation des transactions, consultez SET TRANSACTION ISOLATION LEVEL dans la documentation SQL Server.
SQLSRV_TXN_READ_COMMITTED

or

PDO::SQLSRV_TXN_READ_COMMITTED
TransparentNetworkIPResolution Activé ou Désactivé Affecte la séquence de connexion lorsque la première adresse IP résolue du nom d’hôte ne répond pas et qu’il existe plusieurs adresses IP associées au nom d’hôte.

Interagit avec MultiSubnetFailover pour fournir différentes séquences de connexion. Pour plus d’informations, voir Résolution transparente d’adresses IP réseau. ou Utilisation de la résolution d’adresses IP réseau transparente.
activé
TrustServerCertificate 1 ou true pour approuver le certificat.

0 ou false pour ne pas approuver 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)
Identificateur d’utilisateur

(non pris en charge dans le pilote PDO_SQLSRV)
String Spécifie l’ID utilisateur à utiliser lors de la connexion avec l’authentification SQL Server4. Non défini.
WSID String Spécifie le nom de l’ordinateur pour le traçage. Non défini.
  1. L’attribut ConnectionPooling ne peut pas être utilisé pour activer/désactiver le regroupement de connexions sur Linux et macOS. Consultez Regroupement de connexions (Microsoft Drivers for PHP for SQL Server).

  2. Toutes les requêtes exécutées via la connexion établie sont envoyées à la base de données spécifiée par l’attribut Database. Toutefois, si l’utilisateur dispose des autorisations appropriées, il peut accéder aux données des autres bases de données à l’aide d’un nom qualifié complet. 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 en utilisant le nom qualifié complet.

  3. L’activation de Encryption peut avoir un impact sur les performances de certaines applications, en raison de la charge de traitement nécessaire pour chiffrer les données.

  4. Les attributs UID et PWD doivent tous deux être définis lors de la connexion avec l’authentification SQL Server.

Une grande partie des 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 Utilisation de mots clés de chaîne de connexion avec SQL Server Native Client.

Voir aussi

Connexion au serveur