IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Erreur connexion base de donnee SQL Server Compact


Sujet :

ASP.NET

  1. #1
    Membre régulier
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2008
    Messages : 138
    Points : 70
    Points
    70
    Par défaut Erreur connexion base de donnee SQL Server Compact
    Bonjour

    Voila, sous Visual Studio 2008, je souhaite realiser une application console qui se connecte a une base de donnee.
    J'ai donc suivi le tuto Tuto de Serge Tahe et me trouve coince lorsque je souhaite executer mon programme. La connexion ne s'effectue pas, j'ai le message d'erreur suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error 40 :impossible d'ouvrir une connexion a SQL Server
    Voici le code de mon fichier App.config contenant connectionString :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <connectionStrings>
        <add name ="dbSqlServerCe" connectionString="Data Source=dbarticles.sdf;Persist Security Info = false;"/>
      </connectionStrings>
    </configuration>

    et celui relatif a ma connexion :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    using System.Configuration;
    using System.Data.OleDb;
     
    namespace ConsoleApplication2
    {
        class Program
        {
     
            static void Main(string[] args)
            {
                string connectionString = ConfigurationManager.ConnectionStrings["dbSqlServerCe"].ConnectionString;
                string requete = "SELECT * FROM articles";
                ExecuteSelect(connectionString, requete);
            }
     
     
            static void ExecuteSelect(string connectionString, string requete)
            {
                Console.WriteLine("Entree dans ExecuteSelect()");
                //dealing with exceptions
                try
                {
                    using (SqlConnection connexion = new SqlConnection(connectionString))
                    {
                        //open the connexion
                        connexion.Open();
                        Console.WriteLine("Connexion ouverte");
                        //execute sqlCommand with request
                        SqlCommand command = new SqlCommand(requete, connexion);
                        SqlDataReader reader = command.ExecuteReader();
                        //dislay the result
                        Console.WriteLine("Appel de AfficherReader()");
                        AfficherReader(reader);
                        Console.Read();
                    }
                }
                catch (Exception e)
                {
                    //error message
                    Console.WriteLine("Erreur d'accès a la base de données (" + e.Message + ")");
                    Console.Read();          
                }
            }
    Lorsque je teste ma connexion a la base depuis l'explorateur des serveurs, le test est positif, mais je remarque que des que je lance le programme, une petite croix rouge apparait sur l'icone de ma connexion.
    Est-ce ma connectionString qui est mauvaise ? (j'ai egalement essaye de mettre le chemin d'acces complet de la base ca ne change rien)
    Je suis quasiment sur que l'erreur est liee a la configuration du serveur.
    Certains anciens posts parlent de configurer SQL Server Browser mais je ne sais pas comment...

    Merci d'avance

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    ta base est dans quel répertoire ? tu as mis un chemin relatif, donc il faut qu'elle soit dans le répertoire courant...

  3. #3
    Membre régulier
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2008
    Messages : 138
    Points : 70
    Points
    70
    Par défaut
    En realite, elle est presente deux fois.
    Une fois dans le meme repertoire que le fichier App.config et que mon .cs, et egalement dans bin/debug (je ne sais pas pourquoi ici).

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par Shargat Voir le message
    En realite, elle est presente deux fois.
    Une fois dans le meme repertoire que le fichier App.config et que mon .cs, et egalement dans bin/debug (je ne sais pas pourquoi ici).
    euh... y a pas de répertoire bin/Debug en ASP.NET ! te serais-tu trompé de forum ?

    Elle est présente 2 fois parce que le fichier original (qui appartient à ton projet) est copié dans le répertoire de l'exe lors de la compilation.

    En fait il faudrait que tu modifies ta chaine de connexion comme ça :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    <add name ="dbSqlServerCe" connectionString="Data Source=|DataDirectory|\dbarticles.sdf;Persist Security Info = false;"/>
    la chaine "|DataDirectory|" sera remplacé automatiquement par le chemin où se trouvent les données dans ton appli, à savoir le répertoire de l'exe

    Si tu veux modifier à l'exécution le répertoire de données, tu peux utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AppDomain.CurrentDomain.SetData("DataDirectory", leRepertoireQueTuVeux);

  5. #5
    Membre régulier
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2008
    Messages : 138
    Points : 70
    Points
    70
    Par défaut
    Ah oui pardon je me suis trompe. J'etais en projet ASP mais comme ca ne fonctionnait pas je suis passe en console entre temps. Desole
    Cela dit l'erreur a changee :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    erreur 26 : Erreur lors de la localisation du serveur de l'instance specifiee

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    ce que j'ai dit sur "|DataDirectory|" reste valable a priori...

  7. #7
    Membre régulier
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2008
    Messages : 138
    Points : 70
    Points
    70
    Par défaut
    Oui j'ai en effet remplacé mon chemin comme tu l'avais spécifié.
    Je sèche

  8. #8
    Membre régulier
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2008
    Messages : 138
    Points : 70
    Points
    70
    Par défaut
    Ok resolu !
    J'ai reessaye en utilisant SQL Server 2005 plutot que celui propose par le tuto.

  9. #9
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    en général on met la base de données dans le répertoire App_Data à la racine de l'application

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. connexion a une base de donnees sql server 2OO5
    Par djouk dans le forum VB.NET
    Réponses: 1
    Dernier message: 03/04/2010, 21h57
  2. Connexion a une base de donnee SQL SERVER 2005 avec VB 2005
    Par ingjulien dans le forum Windows Forms
    Réponses: 2
    Dernier message: 25/04/2009, 11h25
  3. Probleme connexion base de données (SQL Server 2005 Express)
    Par GuileIzback dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 13/11/2006, 01h46
  4. relier 2 base de donnees sql server 20000
    Par djig dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 09/11/2006, 12h46
  5. [C# 2.0] Comment se connecter à une base de données SQL Server ?
    Par prince_antonio dans le forum Accès aux données
    Réponses: 5
    Dernier message: 14/07/2006, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo