Connexion a un remote Serveur SQL Express [Résolu]

usbeck 13 Messages postés dimanche 19 décembre 2004Date d'inscription 21 juin 2007 Dernière intervention - 8 juin 2007 à 07:50 - Dernière réponse : cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention
- 9 juin 2007 à 17:23
Bonjour,

C'est un sujet très récurant et pourtant je n'arrive pas à résoudre mon probleme. Je n'arrive pas à me connecter depuis un autre ordi sur ma Base de donnée SQL Serveur Express (2005).

J'explique :

J'ai fait l'application C# la plus simple possible :

public Form1()
        {
            InitializeComponent();

            try
            {
                /////////////////////////////////////////////////
                // ECRITURE DANS LA DATABASE
                /////////////////////////////////////////////////
                System.Data.SqlClient.SqlConnection oConnection;
                oConnection =  new System.Data.SqlClient.SqlConnection();

                string sConnectionString;
                sConnectionString = "Server=169.254.168.25\\SQLExpress; Initial Catalog='bdremote';Trusted_Connection=True;";

                oConnection.ConnectionString = sConnectionString;
                oConnection.Open();
                System.Data.SqlClient.SqlCommand oCommand;
                string sSQL;
                sSQL = "INSERT INTO [Table1](firstname,lastname)";
                sSQL = sSQL + " VALUES('ca marche','"+System.DateTime.Now.ToString()+"')";

                oCommand = new System.Data.SqlClient.SqlCommand(sSQL, oConnection);
                oCommand.ExecuteNonQuery();

                oConnection.Close();

                label1.Text = "Insert réussi";
            }
            catch (Exception ex)
            {
                label1.Text = ex.Message;
            }

        }


En gros si mon Insert marche j'écris ca marche sinon j'écris l'erreur.
En local pas de problème, en distant rien à faire :'(
Toujours la fameuse erreur :

An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: TCP Provider, error: 0 - Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu.)

Sur ma machine 169.254.168.25 est installé un serveur SQLExpress 2005, je suis bien allé configurer l'accès distant dans "configuration de la surface d'exposition" => "Connexion distante" => "Utilisation de TCP/IP uniquement"
Apres un échec j'ai téléchargé SQL Server Management Studio Express, ait suivi un tuto quant à son utilisation qui m'a mené encore à un échec.

Pourquoi est il si dur de faire marcher un Server SQL distant.
J'ai vraiment besoin d'aide, si vous savez pourquoi ca ne marche pas :
-> pas ouvert ce qu'il faut sur le server
-> manque un truc à télécharger
-> j'aurais raté comment on met le server SQL en trusted connexion ?
-> problème avec ma chaine de connexion (je n'ai pas essayé que celle présenté, mais je serai ravie de prendre toutes celles que vous me proposez :) )
je vous serai éternellement reconnaissant de m'éclairer.

Merci d'avance !!!

PS : s'il vous plait, ne me dites pas que c'est impossible de se connecter à distance : / , j'ai peur parce que toute mon appli (un peu plus conséquante que mon appli test, tomberait à l'eau)

--- Ne prenez pas le vie trop au sérieux, de toutes manières vous n'y survivrez pas ---
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
dominique.stock 446 Messages postés vendredi 7 novembre 2003Date d'inscription 8 octobre 2008 Dernière intervention - 8 juin 2007 à 17:28
3
Merci
Probleme de droit  ... dans la chaine de connection ajoute un user et un password .
Dom

Merci dominique.stock 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 123 internautes ce mois-ci

Commenter la réponse de dominique.stock
dominique.stock 446 Messages postés vendredi 7 novembre 2003Date d'inscription 8 octobre 2008 Dernière intervention - 8 juin 2007 à 09:24
0
Merci
Bonjour,
Une piste :
As-tu un AntiVirus ou FireWall ?

Dom
Commenter la réponse de dominique.stock
dominique.stock 446 Messages postés vendredi 7 novembre 2003Date d'inscription 8 octobre 2008 Dernière intervention - 8 juin 2007 à 09:25
0
Merci
Arrives-tu à pinger le 169.254.168.25 ?

Dom
Commenter la réponse de dominique.stock
usbeck 13 Messages postés dimanche 19 décembre 2004Date d'inscription 21 juin 2007 Dernière intervention - 8 juin 2007 à 15:24
0
Merci
Oui il n'y a pas de probleme de réseau entre les 2 machines. Antivirus et Firewall désactivé.
Tu as l'air de dire qu'apparemment tout est ok dans ma configuration : / ?

--- Ne prenez pas le vie trop au sérieux, de toutes manières vous n'y survivrez pas ---
Commenter la réponse de usbeck
dominique.stock 446 Messages postés vendredi 7 novembre 2003Date d'inscription 8 octobre 2008 Dernière intervention - 8 juin 2007 à 15:26
0
Merci
As-tu essayer une connection par l'odbc ?

Ce qui me surprend c'est :"Server=169.254.168.25\\SQLExpress"
Je mettrais tout simplement Server=NomduserveurSQL

Dom
Commenter la réponse de dominique.stock
usbeck 13 Messages postés dimanche 19 décembre 2004Date d'inscription 21 juin 2007 Dernière intervention - 8 juin 2007 à 17:26
0
Merci
Non j en'ai pa tester par l'dbc (j'avoue ne pas etre tres au courant de ce que c'est).
Mais ca avance ==> j'ai tout refait comme il faut sur un windows server 2003 et maintenant j'ai une autre erreur :

Échec de l'ouverture de session de l'utilisateur ''. L'utilisateur n'est pas associé à une connexion SQL Server approuvée.

Donc je pense que j'arrive à me connecter au server et qu'il ne m'ouvre pas de session (c'est déjà mieux). Alors ensuite, pourquoi il ne m'ouvre pas de session ??

--- Ne prenez pas le vie trop au sérieux, de toutes manières vous n'y survivrez pas ---
Commenter la réponse de usbeck
usbeck 13 Messages postés dimanche 19 décembre 2004Date d'inscription 21 juin 2007 Dernière intervention - 8 juin 2007 à 19:09
0
Merci
 C'était effectivement un probleme de droit, et c'est enfin résolu.
Il faut d'abord mettre en mode authentification sql server, et ensuite ajouter un user mot de passe dans la chaine de connexion. Merci bien

--- Ne prenez pas le vie trop au sérieux, de toutes manières vous n'y survivrez pas ---
Commenter la réponse de usbeck
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 9 juin 2007 à 17:23
0
Merci
Salut,

Autre correction à effectuer : utiliser des requêtes paramétrées au lieu de batir la requête à coup de concaténation de chaines de caractères => http://msdn2.microsoft.com/fr-fr/library/hdb58b2f(VS.80).aspx

/*
coq
MVP Visual C#
CoqBlog
*/
Commenter la réponse de cs_coq

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.