[Visual Basic]

yyannd Messages postés 44 Statut Membre -  
 Turbo -
Bonjour,

Je voudrais pouvoir me connecter à une base de donnée SQL via visual basic 6.0

Mon tuteur de stage me demande du code pour se connecter, quelqu'un pourrait m'aider?

Merci

9 réponses

  1. yyannd Messages postés 44 Statut Membre 4
     
    Je voudrais pouvoir me connecter à une base de donnée SQL SERVER via visual basic 6.0

    Mon tuteur de stage me demande du code pour se connecter, quelqu'un pourrait m'aider?

    Merci
    2
  2. Pascal_22 Messages postés 559 Statut Membre 54
     
    Salut Yyannd,

    C'Est assez simple. Moi je procède de cette façon :

    Tu te crée une connexion et un recordset: avec une variable qui va contenir ta requête sql, moi ma variable je l'ai nommé sql

    Dim cn_Invarm As New ADODB.Connection
    Dim rsUsager As New ADODB.Recordset
    Dim sql as String

    cn_Invarm.Open "Provider=sqloledb;Data Source=SERVEURSQL;Initial Catalog=INVENTAIRE;Integrated Security=SSPI;"

    sql = "Select * from Table_Usagers"

    rsUsager.Open sql, cn_Invarm, adOpenForwardOnly, adLockReadOnly

    Il te reste juste a changer le 'INIT CATALOG' qui est en fait le nom de ta base de donnée.Moi elle s'Appelle 'Inventaire' ET a changer ton 'DATA SOURCE'.

    Si tu veux plus d'explication, ne te gêne pas !!!

    Bonne chance !!

    Pascal_22
    1
  3. Pascal_22 Messages postés 559 Statut Membre 54
     
    Salut Yyannd !

    J'ai oublier de te dire que tu dois faire une référence a
    Microsoft ActiveX data objects 2.7 library pour pouvoir untiliser ADO

    Bonne chance !

    Pascal_22
    1
    1. yyannd Messages postés 44 Statut Membre 4
       
      Salut Pascal,

      Merci pour ta réponse, je voulais juste savoir si mon code fonctionnait aussi?


      Public NomDeLaConnexion As New SqlConnection

      NomDeLaConnexion.ConnectionString = "Persist Security Info=False;Integrated Security=SSPI;database=nom_base;server=nom_serv"
      NomDeLaConnexion.Open()

      End Sub


      Merci
      0
  4. Pascal_22 Messages postés 559 Statut Membre 54
     
    Salut Yyannd,

    Je ne peux te dire, moi je n'ai pas appris de cette facon. Il faudrait que tu fasses une petite recherche sur google !!

    Bonne chance !!

    PAscal_22
    1
    1. yyannd Messages postés 44 Statut Membre 4
       
      Merci beaucoup,


      J'ai juste encore un petit problème avec ton code,

      Integrated Security=SSPI;" n'est pas sécurisé c'est à dire que je peux me connecter via mon login de windows

      Or, j'ai un login et un pass pour le serveur et je voudrai que l'on puisse y entrer seulement avec ceci.

      Quelqu'un sait quels sont les lignes de code qui me permette de realiser ça?

      Merci
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Pascal_22 Messages postés 559 Statut Membre 54
     
    Salut Yyannd,

    voici la string de connexion :

    cn_Invarm.Open "PROVIDER=SQLOLEDB;DATA SOURCE=serveursql;UID=NomUsager;PWD=MotDePASSE;DATABASE=Inventaire"

    Il faut que tu enleve Integrated Security=SSPI;" et que tu le remplace par username et passeword décris plus haut !!

    Bonne Chance !!

    Pascal_22
    1
  7. yyannd Messages postés 44 Statut Membre 4
     
    Re,

    Yes merci j'avais trouvé ça sur google j'ai encore un petit problème la..

    Donc voila mon code

    Private Sub bSQL_Click()

    Dim cn_Invarm As New ADODB.Connection
    Dim rsUsager As New ADODB.Recordset
    Dim sql As String

    cn_Invarm.Open "Provider=sqloledb;Data Source= codaps10;Initial Catalog=seshat;User ID= sepoat_rw;pwd=az25pl87;"

    sql = "Select * from Type"

    rsUsager.Open sql, cn_Invarm, adOpenForwardOnly, adLockReadOnly
    End Sub

    Le problème est donc lorsque je clique sur le bouton il se passe quelque chose, la requete est exécuté mais je ne vois pas le résultat..

    Mon tuteur de stage m'a dit qu'il faut changer quelque chose pour faire apparaitre le resultat de la requete,
    Il veut en fait que je fasse apparaitre le resultat dans un texteBox...mais je ne vois pas comment faire apparaitre le resultat de ma requete

    Merci
    1
  8. Pascal_22 Messages postés 559 Statut Membre 54
     
    Salut Yyann !

    Bon d'accord !!

    Premièrement c'Est normal que tu ne vois rien car la ta requete est dans ton recordset, un coup que ton recordset est ouvert, la faut que tu rajoute du code pour l'affficher

    donc rajoute toi une textebox

    Me.Text1.Text = " "

    While Not rsUsager.EOF
    Me.Text1.Text = Me.Text1.Text & rsUsager.Fields("Nom").Value & Chr(44) & Chr(32)
    rsUsager.MoveNext

    Wend

    Ok maintenant je t'explique le code:
    --> while not rsUsager.Eof --> ca veux dire qu'il va boucler jUsqu'a temps qu'il a passer toutes les enregistrement qui est dans le recordset. Cest une boucle.

    Maintenant -->Me.Text1.Text = Me.Text1.Text & rsUsager.Fields("Nom").Value

    ca veux dire que tu mets dans ton textebox ce qui est déja dans ton textebox puis tu ajoutes le champs ("Nom") qui est dans ton recordset. Moi mon champs s'appelle "NOM" mais pour toi il va surement être différent. Donc tu met le nom de ton champs.

    Pour ce qui est rsUsager.moveNext --> ca veux dire qu'il avence au prochain enregistrement, si tu me pas ca, il va toujours boucler sur le meme enregistrement.

    Si tu as besoin d'autre info, n'hésite pas a me contacter soit par le forum ou par mon email qui est dans mon profile..

    Redonne moi des nouvelle !!

    Pascal_22
    1
  9. VBS_HowTo
     
    JE que je vois c'est pour le VB.Net mais comment fait-on la même chose en VB Script?

    Merci
    0