2017-09-13 6 views
1

Ma question est basée sur la réponse de post de @Crontab. J'ai téléchargé SQLSRV40 à partir de Microsoft website. Quand j'essaye d'installer, je demandePilote Microsoft pour SQL Server 2016 - Installation

Lorsque j'installe, je dois entrer un chemin pour extraire les fichiers et comme il est mentionné dans le site web sous les instructions d'installation n ° 3 "Lorsque vous y êtes invité, entrez le chemin vers les extensions PHP annuaire".

J'ai xampp et il y a un répertoire de fichier php. Pour mon chemin d'extraction devrais-je juste donner 'C:/xampp/php'?

Je suis un peu confus parce que, sous la section des commentaires dans la réponse, @Crontab mentionné "Ma conjecture serait là où vous trouverez tous les autres fichiers php _ *. Dll". Cela signifie que tous les fichiers php_*.dll doivent être sous le dossier php droit? Par exemple, si je les extrait dans ce dossier ou dossier différent, quand j'ai ajouté php_pdo_sqlsrv_7_nts_x64 dans mon dossier php.ini et connecté via apache je ne pouvais pas trouver ma DLL .

C'est la première fois que j'installe un lecteur de serveur SQL. Toute suggestion serait appréciée.

+2

Vérifiez 'phpinfo()' pour ['extension_dir'] (http://php.net/manual/fr/ini.core.php#ini.extension-dir)? – ficuscr

+1

Mettez-le dans un script ou essayez de la ligne de commande avec 'php -i' ... probablement' C:/xampp/php/ext' – ficuscr

+0

@ficuscr merci, maintenant j'ai obtenu les fichiers extraits après avoir simplement entré 'C:/xampp' chemin. Merci pour le lien. –

Répondre

1

Apparemment, le problème principal était sqlsrv les pilotes disponibles pour le téléchargement sur les sites Microsoft ne supportent actuellement que PHP 7.0 +, c'est-à-dire pas PHP 7.1 ou 7.2.

La solution consiste soit à télécharger des pilotes plus récents (support https://github.com/Microsoft/msphpsql/releases pour 7.2 mais étiqueté comme "aperçu technique") soit à rétrograder vers PHP version 7.0.

Autres pièges courants sont:

  • A défaut de télécharger le plus nécessaire Microsoft ODBC drivers.
  • Confusion sur les versions x86 et x64 des pilotes (également ts/nts "thread safe" et "non thread thread"). Cela dépendra de votre installation système/php.

voir également que PECL offre les versions 'aperçu' des pilotes: https://pecl.php.net/package/pdo_sqlsrv/5.0.0/windows

Là, ils offrent également cette description utile:

Les pilotes Microsoft pour PHP pour SQL Server sont PHP extensions qui permettent la lecture et l'écriture de données SQL Server à partir de scripts PHP. L'extension SQLSRV fournit une interface procédurale tandis que l'extension PDO_SQLSRV implémente PDO pour accéder aux données dans toutes les éditions de SQL Server 2008 R2 et versions ultérieures (y compris Azure SQL DB). Ces pilotes s'appuient sur le pilote Microsoft ODBC pour SQL Server pour gérer la communication de bas niveau avec SQL Server.