[VB] Problème de connexion avec SQL Server

Résolu/Fermé
Messages postés
5
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
7 juin 2010
-
 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

Messages postés
5
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
7 juin 2010
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
Messages postés
680
Date d'inscription
lundi 21 décembre 2009
Statut
Membre
Dernière intervention
7 décembre 2012
72
Bonjour,

changer la chaine de cnx comma ca

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

vous utilisez sql express ??
Messages postés
680
Date d'inscription
lundi 21 décembre 2009
Statut
Membre
Dernière intervention
7 décembre 2012
72
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/
Messages postés
5
Date d'inscription
mardi 24 février 2009
Statut
Membre
Dernière intervention
7 juin 2010
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
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.