[VB] Problème de connexion avec SQL Server

Résolu
Tobear Messages postés 6 Statut Membre -  
 Thewmat -
Bonsoir à tous, je commence un projet en VB.NET avec une base de données SQL. J'ai déjà réaliser un projet du meme type avec une base access. Il n'y a pas grand chose mis a part les connecteur.

Je travaille avec SQL Server 2005 et Visual Studio 2010.

- J'ai installé SQL Server avec pour connexion le login/motdepasse de windows.
- Je crée ma base avec Visual Studio, je retrouve bien mon fichier bdd.mdf

Mais voila impossible d'afficher les valeur enregistrer dans ma base dans une ListBox.

Voici mon simple code si quelqu'un pourrait m'aider ca me ferais le plus grand bien :)

Imports System.Data
Imports System.Data.OleDb
Imports MySql.Data.MySqlClient

Public Class Form1

    Dim MyConnexion As MySqlConnection = New MySqlConnection()

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

        MyConnexion.ConnectionString = "server=Tobear-PC\SQLEXPRESS; user id=Tobear; password=****** ;database=D:\Perso\PTI\TestVB\bdd.mdf"

        Dim MyCommand As MySqlCommand = MyConnexion.CreateCommand

        MyCommand.CommandText = "SELECT * FROM client"

        MyConnexion.Open()

        Dim MyReader As MySqlDataReader = MyCommand.ExecuteReader()

        Do While MyReader.Read()

            LB_CLIENT.Items.Add(MyReader.Item("prenom") & vbTab & MyReader.Item("nom"))

        Loop
        MyReader.Close()

        MyConnexion.Close()

    End Sub

End Class


Merci d'avance pour votre aide

L'erreur est la suivante :

AppliSQL.vshost.exe Error: 0 : Unable to connect to any of the specified MySQL hosts.
Une exception de première chance de type 'MySql.Data.MySqlClient.MySqlException' s'est produite dans MySql.Data.dll

5 réponses

  1. Tobear Messages postés 6 Statut Membre 1
     
    J'ai corrigé mon code comme ceci :

    Imports System.Data
    Imports System.Data.SqlClient
    
    Public Class Form1
    
        Dim MyConnexion As SqlConnection = New SqlConnection()
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
            Try
    
                MyConnexion.ConnectionString = "server=Tobear-PC\SQLEXPRESS; user id=Tobear; password=****** ;database=bdd"
    
                Dim MyCommand As SqlCommand = MyConnexion.CreateCommand
    
                MyCommand.CommandText = "SELECT * FROM client"
    
                MyConnexion.Open()
    
                Dim MyReader As SqlDataReader = MyCommand.ExecuteReader()
    
                Do While MyReader.Read()
    
                    LB_CLIENT.Items.Add(MyReader.Item("prenom") & vbTab & MyReader.Item("nom"))
    
                Loop
    
                MyReader.Close()
    
                MyConnexion.Close()
    
            Catch ex As Exception
                MsgBox(ex.Message, MsgBoxStyle.Critical, "Erreur")
            End Try
    
        End Sub
    
    End Class
    


    Et j'ai l'erreur :

    Echec de l'ouverture de session de l'utilisateur 'Tobear'.

    Alors que c'est bien l'utilisateur de la session windows et il est crée aussi dans sql server. J'ai aussi crée ma base. J'ai donné l'accès a 'Tobear' pour bdd.

    Je vois pas trop d'où vient l'erreur
    1
  2. holow1 Messages postés 739 Statut Membre 71
     
    Bonjour,

    changer la chaine de cnx comma ca

    MyConnexion.ConnectionString = "initial catalog=bdd;data source=.\SQLEXPRESS ;integrated security=true"

    vous utilisez sql express ??
    1
  3. holow1 Messages postés 739 Statut Membre 71
     
    Bonjour,

    il ya des error dans ton code .

    la
    Imports System.Data
    Imports System.Data.OleDb
    Imports MySql.Data.MySqlClient


    il faut just importe

    Imports System.Data.SqlClient
    ou
    Imports System.Data
    Imports System.Data.SqlClient

    comme tu veux

    la 2eme problem la dans la chaine de cnx

    MyConnexion.ConnectionString = "server=Tobear-PC\SQLEXPRESS; user id=Tobear; password=****** ;database=D:\Perso\PTI\TestVB\bdd.mdf"

    pour sql en ne donne pas le chemin de la base comme access

    comme ca

    MyConnexion.ConnectionString = "Initial catalog=nom_base_donne; data source=.\SQLEXPRESS ; Integrated Security=true"

    et pour plus d'information sur les chaine de connection voire ici

    https://www.connectionstrings.com/sql-server-2005/
    0
  4. Tobear Messages postés 6 Statut Membre 1
     
    Non je ne crois pas.

    Je suis sous windows 7, j'ai fais ceci :

    - Install de SQL server 2005
    - Install de SQL server 2005 SP3
    - Install de SQL management
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Thewmat
     
    C'es normal ce n'est pas l'utilisateur de la base qu'il veux mais celui de la connexion.

    Il faut que tu créer la connexion dans sécurité nouveau login.
    0