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

Accès aux données Discussion :

Erreur Liaison entre SQL Server (fichier MDF) et VB.net


Sujet :

Accès aux données

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Erreur Liaison entre SQL Server (fichier MDF) et VB.net
    Bonjour à tous,

    je viens vous demander votre aide car je suis en train de m'arracher les quelques chevuex qui me restent sur une connexion à une base SQL Server depuis mon projet en VB.net.
    Je n'utilise que les versions Express des logiciels (VB 2008 et SQL Server 2008).
    Coté SQL Server, j'ai utilisé le SQL Server Management Studio pour créer une base de données "TOTO" (fichier toto.mdf dans mon projet). J'ai créer quelques tables et voilou.
    Maintenant, coté VB, j'ai codé une connexion comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    connexion = New System.Data.SqlClient.SqlConnection("Data Source='.\SQLEXPRESS2008';" & _
                                                                "Initial Catalog=;" & _
                                                                "Integrated Security=true;" & _
                                                                "AttachDBFilename='C:\mon_dossier\toto.mdf'")
            connexion.Open()
    Mais lorsque je lance le débug, ça me plante au niveau du open, en me disant :
    Impossible d'ouvrir le fichier physique "C:\mon_dossier\toto.mdf". Erreur du système d'exploitation 5 : "5(Accès refusé.)". Échec d'une tentative d'attachement d'une base de données nommée automatiquement pour le fichier C:\mon_dossier\toto.mdf. Il existe une base de données du même nom ou le fichier spécifié ne peut être ouvert ou il se trouve sur un partage UNC.
    normalement, les deux applications utilisent mon identifiant windows pour se connecter.
    J'ai essayé d'acceder au fichier MDF depuis l'interface de connexion à une source de données mais là, j'ai le message d'erreur suivant, dès que je sélectionne mon fichier MDF dans l'explorateur de fichiers :
    toto.mdf
    Vous n'avez pas l'autorisation d'ouvrir ce fichier.
    Consultez le propriétaire du fichier ou un administrateur pour obtenir cette autorisation.
    Quelqu'un aurait-il une idée pour "ouvrir" les droits de mon fichier à ma connexion VB?

    Merci pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,
    ta chaine de connexion initiale :
    Code VB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    connexion = New System.Data.SqlClient.SqlConnection("Data Source='.\SQLEXPRESS2008';" & _
                                                                "Initial Catalog=;" & _
                                                                "Integrated Security=true;" & _
                                                                "AttachDBFilename='C:\mon_dossier\toto.mdf'")

    je ne crois qu'il soit possible de définir à la fois Initial Catalog et AttachDBFilename . En plus il faut éviter de mettre les simple quote (je crois que ça ne sert à rien des le mettre et s'ils servent à quelque chose, je ne les ai jamais mis dans mon code).

    Essaie ça :

    Code VB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    connexion = New System.Data.SqlClient.SqlConnection("Data Source=.\SQLEXPRESS2008;" & _
                                                                "Initial Catalog=TOTO;" & _
                                                                "Integrated Security=true;")
    Pour des exemples de connection string voir ici.
    Dernière modification par Invité ; 06/11/2010 à 18h14.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci pour ta réponse rapide

    ta solution a fonctionnée nickel !
    mais j'avoue que je ne pige pas...
    En fait, le "Initial Catalog" renvoie à la base de données qui est définie dans mon service SQLEXPRESS ? Donc, pas besoin du chemin vers le fichier MDF?

    en tous cas, merci

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par alex_dev231 Voir le message
    En fait, le "Initial Catalog" renvoie à la base de données qui est définie dans mon service SQLEXPRESS ?
    Ok, c'est ça.

    Citation Envoyé par alex_dev231 Voir le message
    Donc, pas besoin du chemin vers le fichier MDF?
    si ton fichier mdf est déjà attaché par SQLEXPRESS (donc par un SQBDR) alors pas besoin de le spécifier et utiliser Initial Catalog à la place en mettant le nom de la base de données.
    Dans tous les cas ne pas utiliser Initial Catalog et AttachDBFilename en même temps.

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Australie

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2010
    Messages : 132
    Points : 166
    Points
    166
    Par défaut
    Je n'en suis moi même qu'a mes débuts avec ces histoires mais peut être que je peux aider. Pour ma part je me connecte en utilisant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .SqlConnection("server=NomDuServeur;database=NomdelaBD;Trusted_Connection=no;User ID=bob;Password=111111")
    et j'ai créé l'utilisateur "bob" dans MS SQL Server Management Studio, et je l'ai mis dans le schema db_reader de NomdelaBD.

    Si tu veux utiliser le nom d'utilisateur windows comme la syntax de ta commande le reflète, t'es tu assuré que ton nom de session windows est bien dans les utilisateurs voire les administrateur de ta BD?

    zebrette

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

Discussions similaires

  1. [WD9] Liaison OLE entre SQL Server 2000 et Windev9
    Par KOUADIO SEVERIN dans le forum WinDev
    Réponses: 5
    Dernier message: 09/12/2008, 18h44
  2. Liaison entre SQL Server 2000 et VB 6.0
    Par yesorno dans le forum Développement
    Réponses: 1
    Dernier message: 14/09/2008, 22h19
  3. Erreur SQL ajout fichier MDF
    Par penchu dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 21/03/2007, 17h55
  4. Difference entre Sql server edition Standard et Developer
    Par tribune dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/05/2005, 09h29
  5. compatibilité entre sql server 7 et analysis service sql2000
    Par jeremie dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/03/2004, 16h08

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