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 :

Problème d'accés à ma base de données - SQL SERVER EXPRESS


Sujet :

ASP.NET

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 1
    Par défaut Problème d'accés à ma base de données - SQL SERVER EXPRESS
    Bonjour,
    je suis tout nouveau dans la programmation ASP.NET et j'ai un problème au niveau de l'accés à ma base de données.

    Voilà l'erreur :
    Server Error in '/' Application.
    --------------------------------------------------------------------------------
    Impossible d'ouvrir la base de données "document" demandée par la connexion. La connexion a échoué.
    Échec de l'ouverture de session de l'utilisateur 'sa'.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
    Exception Details: System.Data.SqlClient.SqlException: Impossible d'ouvrir la base de données "document" demandée par la connexion. La connexion a échoué.
    Échec de l'ouverture de session de l'utilisateur 'sa'.
    Source Error:

    Line 25: {
    Line 26: SqlCommand cmd = new SqlCommand("SELECT COUNT(*) FROM authors", cn);
    Line 27: cn.Open();
    Line 28: SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
    Line 29: rdr.Read();

    Source File: x:\Inetpub\wwwroot\SITE_COTIC\Savoirs\Documents\ListeDoc.ascx Line: 27
    Stack Trace:

    [SqlException (0x80131904): Impossible d'ouvrir la base de données "document" demandée par la connexion. La connexion a échoué.
    Échec de l'ouverture de session de l'utilisateur 'sa'.]
    System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +171
    System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +199
    System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2406
    System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +34
    System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) +223
    System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) +371
    System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +184
    System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +193
    System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +502
    System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +28
    System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +429
    System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +70
    System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +510
    System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +85
    System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +89
    System.Data.SqlClient.SqlConnection.Open() +160
    ASP.documents_listedoc_ascx.Page_Load(Object sender, EventArgs e) in x:\Inetpub\wwwroot\SITE_COTIC\Savoirs\Documents\ListeDoc.ascx:27
    System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +13
    System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +43
    System.Web.UI.Control.OnLoad(EventArgs e) +80
    System.Web.UI.Control.LoadRecursive() +49
    System.Web.UI.Control.LoadRecursive() +132
    System.Web.UI.Control.LoadRecursive() +132
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3745


    Version Information: Microsoft .NET Framework Version:2.0.50727.832; ASP.NET Version:2.0.50727.832


    et voici le code que j'utilise pour ma connexion :

    protected void Page_Load(object sender, EventArgs e) {

    using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectString"].ToString())) {

    SqlCommand cmd = new SqlCommand("SELECT COUNT(*) FROM document", cn);
    cn.Open();
    SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
    rdr.Read();
    Response.Write(rdr[0].ToString()); //read a value
    }
    }


    Et le fichier web.config :

    <connectionStrings>
    <add name="ConnectString"
    connectionString="Server=Mon serveur\SQLExpress;Database=ma table;User id=l'identifiant SQL sevrer; password=mot de passe SQL Server"
    providerName="System.Data.SqlClient" />
    </connectionStrings>
    <system.web>
    <compilation
    defaultLanguage="c#"
    debug="true"
    strict="false"
    explicit="true"
    />
    <pages>
    <namespaces>
    <clear/>
    <add namespace="System"/>
    <add namespace="System.Collections"/>
    <add namespace="System.Collections.Specialized"/>
    <add namespace="System.Configuration"/>
    <add namespace="System.Text"/>
    <add namespace="System.Text.RegularExpressions"/>
    <add namespace="System.Web"/>
    <add namespace="System.Web.Caching"/>
    <add namespace="System.Web.SessionState"/>
    <add namespace="System.Web.Security"/>
    <add namespace="System.Web.Profile"/>
    <add namespace="System.Web.UI"/>
    <add namespace="System.Web.UI.WebControls"/>
    <add namespace="System.Web.UI.WebControls.WebParts"/>
    <add namespace="System.Web.UI.HtmlControls"/>
    <add namespace="Savoirs.Outils" />
    </namespaces>
    </pages>
    <customErrors
    mode="Off"
    defaultRedirect="Erreur.htm"
    >
    <error
    statusCode="404"
    redirect="Erreur404.htm"
    />
    </customErrors>
    <trace
    enabled="false"
    requestLimit="10"
    pageOutput="false"
    traceMode="SortByTime"
    localOnly="true"
    />
    <sessionState
    mode="InProc"
    stateConnectionString="tcpip=?????"
    sqlConnectionString="data source=L'adresse IP de mon serveur"
    cookieless="false"
    timeout="20"
    />
    <globalization
    requestEncoding="utf-8"
    responseEncoding="utf-8"
    />
    </system.web>
    </configuration>

    Voila, et je developpe en langage C# sous l'environnement Web Matrix et, j'accède à ma base de données via une connexion à un serveur (connexion machine/serveur avec un switch) qui heberge SQL SERVER EXPRESS 2005, et que j'utilise une authentification SQL (avec id et mot de passe).

    Merci d'avance pour vos reponses,
    Ca m'aiderait vraiment à avancer dans mon projet...

    Je vous suis déjà tres reconnaissant pour l'existence de ce genre de forum...

  2. #2
    Membre Expert Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Par défaut
    est-ce que ton compte sa peut se connecter sur le serveur?

    le compte ne serait-il pas désactivé?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 32
    Par défaut
    Peut-être avec deux antislash dans ta chaîne de connexion :

    "Server=Mon serveur\\SQLExpress..." au lieu de
    "Server=Mon serveur\SQLExpress..."

    ________________________________
    Seminoque, créateur de
    http://www.bingokaz.com

  4. #4
    Membre éclairé Avatar de flogreg
    Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    432
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 432
    Par défaut
    Citation Envoyé par seminoque Voir le message
    Peut-être avec deux antislash dans ta chaîne de connexion :

    "Server=Mon serveur\\SQLExpress..." au lieu de
    "Server=Mon serveur\SQLExpress..."

    ________________________________
    Seminoque, créateur de
    http://www.bingokaz.com
    Je ne crois pas que les doubles antislash soient demandées dans le Web.config. Ca ressemble plus à un problème de droit.

    L'utilisateur est bien activé sur le serveur ? Le serveur de base de données est il en local ou sur un serveur distant ?

Discussions similaires

  1. Réponses: 0
    Dernier message: 29/09/2013, 16h28
  2. connexion à un fichier de base de données sql server express
    Par djelloharmel dans le forum Accès aux données
    Réponses: 16
    Dernier message: 23/05/2013, 15h05
  3. Réponses: 8
    Dernier message: 10/08/2010, 11h33
  4. base de donne sql server express
    Par moustiqu3 dans le forum C#
    Réponses: 4
    Dernier message: 30/04/2010, 10h18
  5. Réponses: 5
    Dernier message: 18/05/2007, 14h34

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