sqlsrv_connect

Erstellt eine Verbindungsressource und öffnet eine Verbindung. Standardmäßig wird versucht, die Verbindung mithilfe der Windows-Authentifizierung herzustellen.

Syntax

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

Parameter

$serverName: Eine Zeichenfolge, die den Namen des Servers angibt, mit dem eine Verbindung hergestellt wird. Ein Instanzname (z. B. "MeinServer\Instanzname") oder eine Portnummer (z. B. "MeinServer, 1521") kann als Teil dieser Zeichenfolge enthalten sein. Eine umfassende Beschreibung der für diesen Parameter verfügbaren Optionen finden Sie unter dem Schlüsselwort Server im Abschnitt für Verbindungszeichenfolgen-Schlüsselwörter für den ODBC-Treiber unter Verwenden von Verbindungszeichenfolgen-Schlüsselwörtern mit SQL Native Client.

$connectionInfo [OPTIONAL]: Ein assoziatives array, das Verbindungsattribute enthält (z. B. array ("Database" => "AdventureWorks")). In der folgenden Tabelle werden die unterstützten Schlüssel für das Array beschrieben:

Schlüssel Wert Beschreibung Standard

APP

String

Der in der Ablaufverfolgung verwendete Anwendungsname.

Kein Wert festgelegt.

CharacterSet

String

Gibt den Zeichensatz an, der zum Senden von Daten an den Server verwendet wird. Dieser Schlüssel ist neu in SQL Server-Treiber für PHP Version 1.1.

Weitere Informationen finden Sie unter Gewusst wie: Senden und Abrufen von UTF-8-Daten mit der integrierten UTF-8-Unterstützung.

SQLSRV_ENC_CHAR

ConnectionPooling

1 oder true für aktiviertes Verbindungspooling.

0 oder false für deaktiviertes Verbindungspooling.

Gibt an, ob die Verbindung aus einem Verbindungspool zugewiesen wird (1 oder true) oder nicht (0 oder false).

true (1)

Database

String

Gibt den Namen der Datenbank an, die für die herzustellende Verbindung verwendet wird1.

Die Standarddatenbank für die Anmeldung wird verwendet.

Encrypt

1 oder true für eine aktivierte Verschlüsselung.

0 oder false für eine deaktivierte Verschlüsselung.

Gibt an, ob die Kommunikation mit SQL Server verschlüsselt (1 oder true) oder unverschlüsselt (0 oder false) ist2.

false (0)

Failover_Partner

String

Gibt den Server und die Instanz der Datenbankspiegelung (falls aktiviert und konfiguriert) an, der bzw. die im Falle der Nichtverfügbarkeit des Primärservers verwendet werden soll.

Kein Wert festgelegt.

LoginTimeout

Integer

Gibt die Anzahl von Sekunden an, die gewartet wird, bevor der Verbindungsversuch fehlschlägt.

Kein Timeout.

MultipleActiveResultSets

1 oder true zur Verwendung von MARS (Multiple Active Result Sets).

0 oder false zum Deaktivieren von MARS (Multiple Active Result Sets).

Ermöglicht Ihnen, die Unterstützung für MARS (Multiple Active Result Sets) zu deaktivieren oder explizit zu aktivieren. Dieser Schlüssel ist neu in SQL Server-Treiber für PHP Version 1.1.

Weitere Informationen finden Sie unter Gewusst wie: Deaktivieren von MARS (Multiple Active Result Sets).

false (0)

PWD

String

Gibt das der Benutzer-ID zugeordnete Kennwort an, das beim Herstellen einer Verbindung mithilfe der SQL Server-Authentifizierung verwendet werden soll3.

Kein Wert festgelegt.

QuotedId

1 oder true zur Verwendung von SQL-92-Regeln.

0 oder false zur Verwendung von Legacyregeln.

Gibt an, ob für Bezeichner in Anführungszeichen SQL-92-Regeln (1 oder true) oder Legacy-Transact-SQL-Regeln (0 oder false) verwendet werden sollen.

true (1)

ReturnDatesAsStrings

1 oder true, um Datums- und Uhrzeittypen als Zeichenfolgen zurückzugeben.

0 oder false, um Datums- und Uhrzeittypen als DateTime-PHP-Typen zurückzugeben.

Sie können Datums- und Uhrzeittypen ("datetime", "date", "time", "datetime2" und "datetimeoffset") als Zeichenfolgen oder als PHP-Typen abrufen.

Weitere Informationen finden Sie unter Gewusst wie: Abrufen des Datums- und Uhrzeittyps als Zeichenfolge.

false

TraceFile

String

Der Pfad für die Datei, die für die Ablaufverfolgungsdaten verwendet wird.

Kein Wert festgelegt.

TraceOn

1 oder true zum Aktivieren der Ablaufverfolgung.

0 oder false zum Deaktivieren der Ablaufverfolgung.

Gibt an, ob für die herzustellende Verbindung die ODBC-Ablaufverfolgung aktiviert (1 oder true) oder deaktiviert (0 oder false) ist.

false (0)

TransactionIsolation

SQLSRV_TXN_READ_UNCOMMITTED

SQLSRV_TXN_READ_COMMITTED

SQLSRV_TXN_REPEATABLE_READ

SQLSRV_TXN_SNAPSHOT

SQLSRV_TXN_SERIALIZABLE

Gibt die Transaktionsisolationsebene an.

SQLSRV_TXN_READ_COMMITTED

TrustServerCertificate

1 oder true, um dem Zertifikat zu vertrauen.

0 oder false, um dem Zertifikat nicht zu vertrauen.

Gibt an, ob der Client einem selbstsignierten Serverzertifikat vertrauen (1 oder true) oder es ablehnen (0 oder false) soll.

false (0)

UID

String

Gibt die Benutzer-ID an, die beim Herstellen einer Verbindung mithilfe der SQL Server-Authentifizierung verwendet werden soll3.

Kein Wert festgelegt.

WSID

String

Der Name des Computers für die Ablaufverfolgung.

Kein Wert festgelegt.

1. Alle über die hergestellte Verbindung ausgeführten Abfragen werden an die Datenbank gerichtet, die vom Database-Attribut angegeben wird. Es kann jedoch mithilfe eines vollqualifizierten Namens auch auf Daten in anderen Datenbanken zugegriffen werden, wenn der Benutzer über die entsprechenden Berechtigungen verfügt. Wenn beispielsweise die master-Datenbank mit dem Database-Verbindungsattribut festgelegt ist, ist es dennoch möglich, eine Transact-SQL-Abfrage auf die AdventureWorks.HumanResources.Employee-Tabelle auszuführen, indem der vollqualifizierte Name verwendet wird.

2. Die Aktivierung von Encryption kann die Leistung einiger Anwendungen aufgrund des zum Verschlüsseln von Daten erforderlichen Rechenaufwands beeinträchtigen.

3. Die UID- und PWD-Attribute müssen beide festgelegt werden, wenn die Verbindung mithilfe der SQL Server-Authentifizierung hergestellt wird.

Viele der unterstützten Schlüssel sind ODBC-Verbindungszeichenfolgen-Attribute. Informationen über ODBC-Verbindungszeichenfolgen finden Sie unter Verwenden von Verbindungszeichenfolgen-Schlüsselwörtern mit SQL Native Client.

Rückgabewert

Eine PHP-Verbindungsressource. Wenn eine Verbindung nicht erfolgreich erstellt und geöffnet werden kann, wird false zurückgegeben.

Hinweise

Wenn für die UID- und PWD-Schlüssel keine Werte im optionalen $connectionInfo-Parameter angegeben sind, wird versucht, die Verbindung mithilfe der Windows-Authentifizierung herzustellen. Weitere Informationen zum Verbinden mit dem Server finden Sie unter Vorgehensweise: Herstellen einer Verbindung mithilfe der Windows-Authentifizierung und Vorgehensweise: Herstellen einer Verbindung mithilfe der SQL Server-Authentifizierung.

Beispiel

Im folgenden Beispiel wird eine Verbindung mithilfe der Windows-Authentifizierung erstellt und geöffnet. Im Beispiel wird davon ausgegangen, dass SQL Server und die AdventureWorks-Datenbank auf dem lokalen Computer installiert sind. Alle Ausgaben werden in die Konsole geschrieben, wenn das Beispiel über die Befehlszeile ausgeführt wird.

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

Siehe auch

Konzepte

Informationen zu den Codebeispielen in der Dokumentation

Weitere Ressourcen

API-Referenz (SQL Server-Treiber für PHP)
Herstellen einer Verbindung mit dem Server