Microsoft SQL Server : connexion en local
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

Microsoft SQL Server : connexion en local



  1. #1
    Grimmys

    Microsoft SQL Server : connexion en local


    ------

    Bonjour,

    Ma demande est très spécifique ; mais cela fait depuis maintenant deux jours que j'essaye de me connecter à la base de données Microsoft SQL Server de l'entreprise dans laquelle je travaille...

    Le problème : je souhaite me connecter à une base de données Microsoft SQL Server, depuis l'objet PDO de PHP, sachant que j'utilise WAMP.

    J'ai bien installé les drivers nécessaires afin d'utiliser mssql_server, ils sont bien fonctionnels, mais je n'arrive absolument pas à me connecter à la base de données... Une erreur est renvoyée à chaque fois...

    Avez-vous une idée de ce qui pourrait poser problème ?
    J'ai essayé des tonnes d'expressions (connexion au nom de mon serveur sous le format NomPC\SQLExpress, connexion à " (local) ", connexion à localhost, utilisation du port 4033, connexion depuis l'identification windows donc sans utilisateur ni mdp, connexion après création d'un utilisateur dans la bdd etc...).

    Un rappel de ma configuration :

    - Utilisation de Microsoft SQL Server 2008
    - Windows 7 32bits
    - WAMP (les drivers nécessaires sont fonctionnels, l'erreur est bien liée uniquement à la connexion à la base de données)
    - Connexion à une bdd en local
    - PHP v7.0.1
    - Apache v4.3.2

    Merci !

    -----

  2. #2
    pm42

    Re : Microsoft SQL Server : connexion en local

    Tu nous as donné toutes les infos sauf les erreurs renvoyées.

  3. #3
    Grimmys

    Re : Microsoft SQL Server : connexion en local

    L'erreur est la suivante :


    " Warning: Uncaught PDOException: Invalid handle returned. in C:\wamp\www\test\test.php:14 Stack trace: #0 C:\wamp\www\test\test.php(14): PDO->__construct('sqlsrv:Server=(. ..', '', '') #1 {main} thrown in C:\wamp\www\test\test.php on line 14 "



    ​Donc problème de connexion non ?

  4. #4
    pm42

    Re : Microsoft SQL Server : connexion en local

    Une petite recherche Google suggère de mettre connectionPooling=0 : https://stackoverflow.com/questions/...17951#38517951

    Sinon, il faudrait "catcher" la PDOException et l'afficher pour avoir la vraie erreur.

  5. A voir en vidéo sur Futura
  6. #5
    Bluedeep

    Re : Microsoft SQL Server : connexion en local

    Bonjour,
    Citation Envoyé par Grimmys Voir le message

    Ma demande est très spécifique ; mais cela fait depuis maintenant deux jours que j'essaye de me connecter à la base de données Microsoft SQL Server de l'entreprise dans laquelle je travaille...

    Le problème : je souhaite me connecter à une base de données Microsoft SQL Server, depuis l'objet PDO de PHP, sachant que j'utilise WAMP


    J'ai bien installé les drivers nécessaires afin d'utiliser mssql_server, ils sont bien fonctionnels, mais je n'arrive absolument pas à me connecter à la base de données... Une erreur est renvoyée à chaque fois...
    Euh .... il n'y pas besoin de driver pour se connecter à Sql Server, normalement (même si je veux bien admettre qu'avec PHP il faut s'attendre à tout).

    Avez-vous une idée de ce qui pourrait poser problème ?
    Oui; mais quel protocole de connexion utilises tu ? En effet, en local tu peux utiliser share memory, TCP/IP ou les "named pipes".
    Je te suggère de désactiver déjà la connexion via Shared Memory (en passant par SSCM, pas par SSMS).

    Poste aussi le contenu de ta chaine de connexion.
    Dernière modification par Bluedeep ; 14/06/2017 à 08h28.

  7. #6
    Grimmys

    Re : Microsoft SQL Server : connexion en local

    Merci pour la réponse... Je n'avais effectivement pas trouvé cette réponse malgré de nombreuses recherches.

    En tout cas, avec cette légère modification, l'erreur se transforme simplement en " pas les bons drivers installés ", alors que cette erreur avait disparu depuis quelques temps (depuis qu'il me semblait avoir installé les drivers)... Mystère...

    Je viens d'essayer donc d'utiliser php v.5.6.25, mais je capture simplement l'erreur " could not find driver1 "...

    Les drivers que j'ai installé, que je vois comme activés dans les extensions php de WAMP :

    - php_sqlsrv_56_ts.dll
    - php_pdo_sqlsrv_56_ts.dll

    ts puisque j'utilise WAMP, et 56 puisque ma version de php est la version 5.6, non ?

    Pour la version php 7.0.10, j'utilisais :

    - php_pdo_sqlsrv_7_ts_x86.dll
    - php_sqlsrv_7_ts_x86.dll

    Puisque mon système est en 32bits...

    Je ne vois vraiment pas...

  8. #7
    Grimmys

    Re : Microsoft SQL Server : connexion en local

    Bluedeep : on m'a toujours demandé ces drivers... Et les autres sites les préconisent aussi. Ils ne semblent pas installés de base avec PHP...

    Pour ma chaine de connexion :

    $sql = new PDO('sqlsrv:Server= [MyComputerName]\SQLEXPRESS;Database=test', '', '');

    Je laisse les deux derniers arguments vides, pour laisser la connexion se faire par authentification windows.
    Mais j'ai essayé bien d'autres manières.... En remplacant le nom de serveur par " (local) ", par " localhost ", et/ou en modifiant l'utilisateur pour que cela soit un utilisateur que j'ai créé depuis Microsoft Management Studio...

    Au niveau des protocoles, je ne m'y connais pas du tout... Mais normalement avec Microsoft SQL Server, j'utilise TCP/IP.

  9. #8
    Bluedeep

    Re : Microsoft SQL Server : connexion en local

    Citation Envoyé par Grimmys Voir le message
    Bluedeep : on m'a toujours demandé ces drivers... Et les autres sites les préconisent aussi. Ils ne semblent pas installés de base avec PHP...
    Possible : je ne connais rien à PHP.

    Pour ma chaine de connexion :
    $sql = new PDO('sqlsrv:Server= [MyComputerName]\SQLEXPRESS;Database=test', '', '');
    Donc c'est SqlExpress que tu utilises.
    Cette chaine me parait incompléte.
    Tu ne définis pas la méthode d'authentification.


    Je laisse les deux derniers arguments vides, pour laisser la connexion se faire par authentification windows.
    Quand on authentifie par impersonnation de l'utilisateur Windows, il faut préciser "Trusted_Connection=True".
    Voir le détail d'une chaine de connexion ici :
    https://www.connectionstrings.com/sql-server/

    Au niveau des protocoles, je ne m'y connais pas du tout... Mais normalement avec Microsoft SQL Server, j'utilise TCP/IP.
    Dans ces cas là, tu dois le forcer dans le SSMC en désactivant SM et NP.
    Par défaut la connexion tente de s'établir localement en SM.
    Dernière modification par Bluedeep ; 14/06/2017 à 08h57.

  10. #9
    Grimmys

    Re : Microsoft SQL Server : connexion en local

    Je vois...

    Mais finalement, l'erreur s'avère bien être un manque de driver (could not find driver) maintenant.. Or, j'ai bel et bien installé ceux qu'il faut.... DOnc je ne comprend pas..

Discussions similaires

  1. visionner son server local http://ip.du. raspberry sans livebox
    Par pegazix dans le forum Internet - Réseau - Sécurité générale
    Réponses: 5
    Dernier message: 12/12/2014, 07h40
  2. Réponses: 2
    Dernier message: 22/03/2013, 08h33
  3. Connexion au serveur ubuntu (terminal server à la windows)
    Par lordgodgiven dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 15/02/2013, 19h07
  4. erreur connexion sur sql server 2008
    Par invite0a2b1cf6 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 18/04/2011, 08h54
  5. Connexion Réseau Local
    Par invite75397798 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 5
    Dernier message: 31/07/2005, 14h12