Heinrich Schiller  15.11.2019 06:44

Microsoft MSSQL (SQLSRV) unter Windows 10 und XAMPP einrichten

Weil ich es gebraucht habe und Anfangs mit der Einrichtung des Treibers meine Schwierigkeiten hatte, hier eine kleine Beschreibung.

  1. Lade  den Treiber von der Microsoft Seite: https://docs.microsoft.com/de-de/sql/connect/php/download-drivers-php-sql-server?view=sql-server-2017
  2. Installiere den Treiber unter: C:\xampp\php\ext

Nun muss der Treiber in die php.ini unter C:\xampp\php eingetragen werden, das so (für XAMPP mit PHP 7.3) aussehen kann:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Microsoft SQLSRV-Driver ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
extension=php_pdo_sqlsrv_73_ts_x64.dll
extension=php_sqlsrv_73_ts_x64.dll

XAMPP ist unter Windows nur als 32Bit-Software zu haben, mein Windows 10 ist 64Bit. Hier lag mein anfänglicher Fehler, das ich den Treiber als _86.dll laden wollte, weil ich dachte es wäre somit mit XAMPP kompatibel. _x64 ist jedoch für Windows 64Bit der richtige Treiber. Sonst bekam ich den Fehler, das mein Treiber nicht mit der Version für mein Windows kompatibel sei.

Nun sollte der Treiber unter http://localhost/dashboard/phpinfo.php zu sehen sein. Falls nicht, checkt mal folgendes ab:

Nachtrag: 13.02.2020

Der Link auf der Microsoft-Seite, siehe oben, zeigt zu diesem Zeitpunkt auf eine ältere Datei, welches keine Unterstützung für PHP 7.4 beinhaltet. 

Unter: https://github.com/Microsoft/msphpsql/releases gibt es stetts die aktuellsten Dateien, für PHP 7.4 also die Version 5.8.0. Aufpassen, da die Dateien nun selbst etwas anders heißen. Der Rest wie ist gehabt.

Nachtrag: 10.04.2020

Offenbar gibt es seit dem Februar 2019 XAMPP für Windows auch als 64Bit Version, https://www.apachefriends.org/blog/new_xampp_20190227.html. Und ich habe es bisher nicht gemerkt ^^'

Mir ist das nur nebenläufig aufgefallen, als ich die neueste XAMPP Version holte und mir das x64 auffiel. Auch phpinfo() zeigte nun auf 64Bit. Der Blog-Eintrag gab mir dann klarheit. Naja nu... so oft aktualisiere ich das XAMPP nicht.

Erklärt auch warum hier die 64Bit-Treiber funktionieren. Lange Zeit gab es XAMPP für Windows nur als 32Bit, während MacOS und Linux stetts eine 64Bit-Version hatten.