[ODBC] DSN pour se connecter à une base SQL

DSN pour se connecter à une base SQL [ODBC] - PHP - Programmation

Marsh Posté le 01-02-2010 à 16:45:46    

Bonjour,
J'ai développé un petit programme en PHP que je dois mettre sur un serveur utilisant ODBC.
 
Je me suis donc créé un login dans l'onglet sécurité de "SQL Entreprise" avec les droits sur la base de données dont j'ai besoin.
J'utilise la méthode odbc_connect("dsn","utilisateur","pass" );
 
Mais celle ci me retourne une erreur :
Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié, SQL state IM002 in SQLConnect in monfichier à telle ligne.
 
J'en conclut qu'il faut donc créer un dsn pour avoir acces à cette base?
 
Je vais donc dans l' "Administrateur de source de données ODBC", > source de données systeme > ajouter > SQL Server > puis je rempli les champs nécessaires.
 
Mais le message d'erreur s'affiche toujours ..
 
Merci

Reply

Marsh Posté le 01-02-2010 à 16:45:46   

Reply

Marsh Posté le 01-02-2010 à 17:16:32    

Citation :

Sujet : [ODBC] DSN pour se connecter à une base SQL

Base SQL ?
SQL server ? ou une autre base ?
 

Citation :

Je vais donc dans l' "Administrateur de source de données ODBC", > source de données systeme > ajouter > SQL Server > puis je rempli les champs nécessaires.  

En effet, il faut se créer une source de données.

Citation :

Mais le message d'erreur s'affiche toujours ..


Exactement le même message d'erreur ou un autre ? Théoriquement, il devrait être différent.
 
Quoi qu'il en soit, voir http://www.connectionstrings.com/

Reply

Marsh Posté le 02-02-2010 à 09:32:08    

Bonjour,
Merci pour ta réponse.
 
Je suis sous SQL Server 2000.
 
Non, j'ai toujours le même message d'erreur, pourtant, lorsqu'on crée un dsn, il y a un bouton "test" pour tester l'accès, et ce test retourne un succès .... Donc je ne comprends pas pourquoi il n'est pas détecté et j'avouerais être à cours d'idées..

Reply

Marsh Posté le 02-02-2010 à 09:39:59    

Vous n'êtes pas aller voir le site de connectionstrings, n'est-ce pas ? Vous avez tort. Ce problème des connections strings est très courant, et il faut le traiter sérieusement.
 
Pour SQL Server 2000, il a la page http://www.connectionstrings.com/sql-server
 
Maintenant, vous avez plusieurs options en fonction de votre environnement que vous ne nous avez pas décrit.
Vraiment, allez sur cette page http://www.connectionstrings.com/sql-server, pour trouver la bonne connection string. Elle ne s'invente pas, et il y a tellement de variantes, que c'est vous qui saurez trouver celle qui vous convient en fonction de votre système.

Reply

Marsh Posté le 02-02-2010 à 11:13:56    

Oui je suis entrain de parcourir le site.
 
Le truc c'est qu'un de mes prédécesseur a déjà programmé plusieurs scripts sur notre intranet, et j'ai donc récupéré ses fichiers sources pour regarder comment il se connectait à la base.
 
Ce que j'observe, c'est qu'aucun de ses dsn ne sont déclarés dans l'administrateur de source de données odbc mais qu'ils fonctionnent tous. Je me demande où il les avait déclarés ..

Reply

Marsh Posté le 02-02-2010 à 11:23:12    

As-tu testé le DSN que tu as défini dans ODBC? Si ça ne marche pas, il faut commencer par là.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 02-02-2010 à 11:39:40    

Le DSN que j'ai défini dans l'admin odbc ne fonctionne pas, avec toujours le message d'erreur :
 
Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié, SQL state IM002 in SQLConnect
 
 (alors que le test qu'on peut effectuer à la fin de la configuration de ce dsn réussissait)

Reply

Marsh Posté le 02-02-2010 à 11:46:42    

xTm62 a écrit :

(alors que le test qu'on peut effectuer à la fin de la configuration de ce dsn réussissait)


Ah voilà, c'est ça que je voulais demander. Donc c'est bien au niveau de la connection string, à voir sur le site homonyme, j'ai toujours trouvé la solution là bas :jap:


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 02-02-2010 à 12:06:44    

Ca y est j'ai trouvé sur connectionstring !
 
a la place de l'argument dsn j'ai utilisé :
 
$dsn = "Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword";
 
Merci beaucoup à vous tous

Reply

Marsh Posté le 02-02-2010 à 12:07:43    

Et donc pas besoin de declarer de source dans l'administrateur odbc

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed