none
SqlException en vb.net RRS feed

  • Question

  • Bonjour,

     

     

    j'ai recu le message d'erreur suivant: Cannot open database "test.mdf" requested by the login. The login failed. Login failed for user 'xx\tb'.

     

    Voici lecode en vb.net que jai ecris:

     

    Imports System

    Imports System.Data

    Imports System.Data.SqlClient

    Imports Microsoft.VisualBasic

    Public Class Form1

    Inherits System.Windows.Forms.Form

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    Dim queryString As String = "select Ann_Ville from Annonces;"

    Using connection As New SqlConnection("Data Source=.\SQLEXPRESS;" & _

    "Integrated Security=true;Initial Catalog=test.mdf")

     

    connection.Open()

     

    Dim command As New SqlCommand(queryString, connection)

     

    Dim Reader As SqlDataReader = command.ExecuteReader()

    Do While Reader.Read()

    ListBox1.Items.Add(Reader.GetString(0))

    Loop

    Reader.Close()

    End Using

    End Sub

    End Class

     

     

    Merci de m'expliquer ce qui n'est pas correcte dans ce code.

    jeudi 18 septembre 2008 18:13

Réponses

  • Bonjour,

     

    Vous souhaitez utiliser la base de données :

    • sur un serveur SQL (dans ce cas la base de données est déjà présente sur le serveur SQL) ?
    • ou en "mode attaché" (c'est à dire que vous spécifiez un fichier de base de données) ?

    Dans le 2ème cas il faudra spécifier l'emplacement de la base de données via l'option AttachDbFilename :

     

    Code Snippet
    Data Source=.\SQLEXPRESS;AttachDbFilename="X:\Repertoire\ma_bd.mdf";Integrated Security=True;

     

     

    L'option "Initial Catalog" doit être utilisé uniquement si vous vous connectez directement sur un serveur SQL.

     

    Cordialement

    samedi 20 septembre 2008 08:45
    Modérateur
  • Bonjour,

     

    apres avoir ajoute  User Instance=True  ca fonctionne bien. 

     

    Merci pour votre aide!

     

     

    lundi 22 septembre 2008 19:50

Toutes les réponses

  • Bonjour,

     

    Il semblerait que le compte sur lequel vous executez l'application n'est pas autorisé à se connecter sur SQL Server...

    Avez-vous testé via Sql Management de vous connecter sur le serveur SQL ?

     

    Cordialement

     

    vendredi 19 septembre 2008 17:17
    Modérateur
  • Bonjour,

     

    je peux ouvrir sql server management studio express, me connecter, creer des bases de donnees et creer des requettes.

     

    Par ailleurs, la base de donnee test.mdf je l'ai telecharger du web, je l'ai ajoute au projet de visual studio .net. Lorsque je cree des requettes elle fonctionne.

    J'ai le doute que c'est dans cette ligne que ca manque des parametres:

    SqlConnection("Data Source=.\SQLEXPRESS;" & _

    "Integrated Security=true;Initial Catalog=test.mdf")

     

    A+ et merci pour votre aide.

     

     

    vendredi 19 septembre 2008 19:17
  • Bonjour,

     

    Vous souhaitez utiliser la base de données :

    • sur un serveur SQL (dans ce cas la base de données est déjà présente sur le serveur SQL) ?
    • ou en "mode attaché" (c'est à dire que vous spécifiez un fichier de base de données) ?

    Dans le 2ème cas il faudra spécifier l'emplacement de la base de données via l'option AttachDbFilename :

     

    Code Snippet
    Data Source=.\SQLEXPRESS;AttachDbFilename="X:\Repertoire\ma_bd.mdf";Integrated Security=True;

     

     

    L'option "Initial Catalog" doit être utilisé uniquement si vous vous connectez directement sur un serveur SQL.

     

    Cordialement

    samedi 20 septembre 2008 08:45
    Modérateur
  • Bonjour,

     

    J'ai specifie l'emplacement de la base de données via l'option AttachDbFilename. Maintenant je recois un nouveau message. C'est comme suit:

    An attempt to attach an auto-named database for file  test.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.

     

    Cordialement
    lundi 22 septembre 2008 19:40
  • Bonjour,

     

    apres avoir ajoute  User Instance=True  ca fonctionne bien. 

     

    Merci pour votre aide!

     

     

    lundi 22 septembre 2008 19:50