.Net SqlClient Data Provider : Serveur SQL spécifié introuvable
MacIntoc
Messages postés4Date d'inscriptionvendredi 18 avril 2003StatutMembreDernière intervention13 décembre 2007
-
11 déc. 2007 à 17:49
leprofmotive
Messages postés1Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 février 2008
-
11 févr. 2008 à 22:51
Salut !
Un problème dont je n'arrive pas à me dépétré. Le but est d'établir une connection (via l'identification intégré) entre le PDA et un serveur SQL Server 2000 SP3 en utilisant le Compact Framework .net 2.0
Visual Studio m'a installé automatiquement toutes les libs et programmes requis sur le PDA (le CF .net et le client SQL).
La chaine de connection est la même que celle que j'utilises pour les programmes Windows (donc pas d'erreur de syntaxe ou de frappe). Je précise juste le login et le pass du compte Windows a utilisé sur la version PDA.
La chaine ressemble donc à:
"Data Source=SERVEUR\MAIN;Database=TEST; User ID='login';Password='pass';Integrated Security=True"
Mais ça ne marche pas. Au moment d'ouvrir la connection, j'obtiens l'erreur "Serveur SQL spécifié introuvable" au bout de quelques secondes.
Le code de test que j'utilises :
Cursor.Current = Cursors.WaitCursor
Dim connect As New SqlConnection
connect.ConnectionString = "Data Source=SERVEUR\MAIN;Database=TEST; User ID='login';Password='pass';Integrated Security=True"
Try
connect.Open()
Catch e As System.Data.SqlClient.SqlException
Dim txt As String = ""
For Each sqlError As System.Data.SqlClient.SqlError In e.Errors
MacIntoc
Messages postés4Date d'inscriptionvendredi 18 avril 2003StatutMembreDernière intervention13 décembre 2007 12 déc. 2007 à 09:23
Le PDA est branché a un PC du résau via le cable USB. A priori, je dirais donc qu'il y a bien une connection entre le PDA et le serveur. De plus, la connection internet sur le PDA fonctionne correctement.
J'ai également essayer de me connecter a un serveur SQL (SQL Server 2005 Express) installé sur le poste où le PDA était branché, mais sans plus de succé.
Un autre élément qui pourrait peut-être aider. Dans la chaine de connection, si je donne uniquement le nom du serveur sans préciser l'instance, j'obtiens une "Erreur réseau général". Ce qui est interressant, c'est que la propriété procedure de l'erreur SQL renvoyé a la valeur "ConnectionRead (recv)", alors que j'obtiens "ConnectionOpen (connect)" lorsque je précise le canal.
cs_Stephane33
Messages postés630Date d'inscriptionsamedi 15 février 2003StatutModérateurDernière intervention 9 octobre 20111 12 déc. 2007 à 10:19
Je ne suis pas un spécialiste de SQL serveur (je travaille qu'avec SqlCe), j'essaye de te donner des pistes
1/ Je ne suis pas sur que l'espace Data.SqlConnection existe sous Compact Framework (MSDN n'en fait pas mention) > Voir SqlCe (+RDA)
2/ "SERVEUR\MAIN" > Je ne suis pas sur qu'il puisse réussir à trouver le serveur sur ces seules informations
3/ sur MSDN la chaine est légèrement différente
Public Sub CreateSqlConnection()
Dim myConnection As New SqlConnection()
myConnection.ConnectionString = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer;Connect Timeout=30"
myConnection.Open()
End Sub
MacIntoc
Messages postés4Date d'inscriptionvendredi 18 avril 2003StatutMembreDernière intervention13 décembre 2007 12 déc. 2007 à 11:37
1°)Si, ça existe bien. J'ai d'ailleurs essayer avec la version du CF 1 et du CF 2 (même résultat). De toute façon, Visual Studio n'aurait pas pu généré le projet si l'espace n'éxistait pas. Concernant la doc MSDN, cette page donne les limitations de la classe SQLClient du CF.
2°)Ben... je vois pas trop ce que je peux lui indiquer de plus. Il a le nom du serveur (en mettant l'IP, j'obtient exactement la même chose) et l'instance SQL.
3°)Je viens d'essayer en remplacant les données, j'obtient la même erreur.
4°)Pas tout à fait. Ca montre juste que le code que j'utilise devrait fonctionner :-/
Sinon, tu utilise l'espace SQLServerCe pour établir des connections a un serveur SQL ? Je pensais que c'était utilisable uniquement pour gérer des BDD présente sur le PDA.
Vous n’avez pas trouvé la réponse que vous recherchez ?
MacIntoc
Messages postés4Date d'inscriptionvendredi 18 avril 2003StatutMembreDernière intervention13 décembre 2007 13 déc. 2007 à 11:19
Bon, un peu de nouveau.
Déjà, bonne nouvelle, ça fonctionne.
Ensuite, je vous donne la solution seulement si vous me promettez de ne pas rire.
En fait, c'était le port qui était pas bon, tout simplement.
Le truc, c'est que le client SQL du CF ne semble pas prendre en charge le protocole Named Pipe. Hors, il se trouve que le protocole TCP/IP n'utilise pas le port par défaut si le Named Pipe est actif. Donc quand j'essayais de passer par le protocole TCP/IP, je supposais que SQL Serveur écoutait sur le port par défaut. Et en fait, nan. Il écoutait sur le 1288...
Bon bah... voilà. Un problème stupide de plus réglé en je sais pas combien d'heure
leprofmotive
Messages postés1Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 février 2008 11 févr. 2008 à 22:51
Bonjour,
J'ai le même problème : Message "Serveur SQL spécifié introuvable : vaio\\vaio"
J'ai essayé tout un tas de connexion string, j'ai réinstallé SQL server 2005, j'ai désactivé les canaux nommés, VIA et la mémoire partagée pour ne laisser que TCP/IP. Rien n'y fait. C'est d'autant plus étrange que ca marchait bien avant que je change de disque. Ca marchait impec, et je n'avais rien configuré de spécial. la seule différence : j'avais à l'époque une instance nommé VAIO et maintenant elle se nomme VAIO\VAIO . Ca fait peu comme différence...
On est obligé d'utiliser la sécurité intégré ? je ne l'utilisais pas avant et ca marchait. Cela dépend de la version du compact framework ? (jai mis la 2 SP2 la et je travaille avec du Mobile CE 5.0 directement sur l'appareil (un hp ipack copatible CE 5.0).