Zugriff auf MS-SQL(-Express)

Auf dem Server im SQL Server Management Studios (SSMS) einen Rechtsklick auf den Server machen, Einstellungen wählen und unter Security diese Einstellungen vornehmen:

Dann weiter zu Connections:

Dann links im Object Explorer unter Security einen neuen Login erstellen:

Bei diesem User unter User Mapping darauf achten, dass die gewünschte Datenbank aktiviert ist:

Jetzt geht es zum SQL Server Configuration Manager. Der findet sich im Verzeichnis C:\Windows\SysWOW64 unter dem Namen SQLServerManager#.msc. Die Raute steht dabei für die Versionsnummer.

Hier zunächst die SQL Server-Dienste prüfen. Der SQL Server-Browser muss laufen. Der lässt sich an dieser Stelle vermutlich nicht aktivieren. Daher im Dienstemanager starten.

Anschließend unter SQL Server-Netzwerkkonfiguration die aktivierten Protokolle für den betreffenden serverprüfen. Mindestens TCP/IP muss aktiv sein:

Damit diese Änderungen alle greifen, muss der SQL-Server neu gestartet werden.

Im PHP-Code dann die odbc-Connection verwenden:

$db_conn = odbc_connect("Driver={ODBC Driver 17 for SQL Server};Server=" . EASY_DBHOST . ";Database=" . EASY_DBNAME . ";TrustServerCertificate=yes;", EASY_DBUSER, EASY_DBPASS);

Was hier in den geschweiften Klammern stehen muss, findet man im ODBC-Datenquellen-Administrator raus. Den kann man starten, indem man im Windows-Suchfeld einfach ODBC… eingibt. Der gesuchte String findet sich hier:

Fehlercodes bekommt man mit odbc_error(), Abfragen werden mit $ergebnis = odbc_exec($db_conn, $query) ausgeführt. Dieses Ergebnis kann dann mit odbc_fetch_array($ergebnis) aufgelöst werden.