A voir également:
- [Visual Basic]
- Visual basic - Télécharger - Langages
- Visual basic editor - Télécharger - Langages
- Visual petanque - Télécharger - Sport
- Microsoft 365 basic - Accueil - Microsoft Office
- Visual c++ 2019 - Guide
9 réponses
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
Mon tuteur de stage me demande du code pour se connecter, quelqu'un pourrait m'aider?
Merci
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
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
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
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
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
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
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
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
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
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
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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
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
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
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
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
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