VB6 + SQL

VB6 + SQL - VB/VBA/VBS - Programmation

Marsh Posté le 08-02-2005 à 11:40:39    

Salut à tous,
 
Je suis actuellement en stage et je dois réaliser une appli qui gére le personnelle de l'entreprise. Au démarrage de l'appli, l'utilisateur devra saisir un log et pass. Et j'aimerais savoir si je peux utiliser  les comptes référencés sur le serveur SQL ou si je dois créé une table qui recueilleras tous les comptes.
 
Si je peux utiliser les comptes de SQL server, pourrait on me dire la marche à suivre.
 
Pour le moment, je bosse sur une table Mdp où sont regroupés les comptes des utilisateurs. Mais je pense que plus loin je serai bloqué.
 
Merci d'avance.

Reply

Marsh Posté le 08-02-2005 à 11:40:39   

Reply

Marsh Posté le 08-02-2005 à 13:17:53    

Mais tout à fait tu peux utiliser les droits d'accès du serveur SQL et c'est par ailleurs la meilleure solution je pense.....il te faut simplement  écrire la requete d'accès à ta base de données qui hébergent les droits de chaque utilisateurs..


Message édité par Profil supprimé le 08-02-2005 à 13:18:19
Reply

Marsh Posté le 08-02-2005 à 13:33:44    

Voici un parti de mon code qui fonctionne :
 
Private Sub LoginCmd1_Click()
 
Dim Rs As ADODB.Recordset
Dim Connexion As ADODB.Connection
Dim StrSQL As String
 
Set Connexion = New ADODB.Connection
    Connexion.ConnectionString = "Provider=SqlOleDB;SERVER=Ghost\ESSSE1;Database=Mdp;" & _
    "User ID=sa;Password=corentin"
    Connexion.Open
 
Set Rs = New ADODB.Recordset
StrSQL = ("SELECT Login,Password FROM Login WHERE Login = '" & LoginText1 & "' AND password = '" & LoginText2 & "'" )
 
Set Rs = New ADODB.Recordset
    Rs.CursorLocation = adUseClient
    Rs.Open StrSQL, Connexion, adOpenStatic, adLockReadOnly
     
If Rs.RecordCount <> 1 Then
    MsgBox "Mauvais login ou mot de passe !!"
Else
    Unload Login
    Accueil.Show
End If
 
 
End Sub
 
Comme tu peux le voir, dans mon connectionstring, je lui indique le driver SQL, l'instance SQL, le user ID et le pass. Je met également le nom d'une table. Pour le moment, je lui dit d'aller sur la base Mdp que j'ai crée avec un utilisateur, mais ce que je veux c'est de passer par les utilisateurs SQL. Et ce que je ne comprend pas c'est comment lui dire d'aller prendre les comptes SQL. Car si j'enlève le paramètre Database et que j'éxécute le prog, il me dit : le serveur SQL n'éxiste pas ou son accès est refusé.
 
Un noowb

Reply

Marsh Posté le 08-02-2005 à 13:44:50    

tiens un autre exemple:
 
 Public Function essai_connexion(ByRef message As String, ByRef nom_fonction As String) As Boolean
 
        Dim mycon As SqlConnection
         
        Try
            mycon = New SqlConnection("Data Source=ADINE-SQL;initial catalog=ADINE_NAV;User ID=xxxx;Password=xxxxxx" )
 
            mycon.Open()
 
        Catch erreur As SqlException
            messagebox(erreur.message)
 
        Finally
            mycon.Close()
            mycon = Nothing
        End Try
 
        Return True
    End Function
 
ne pas oublier de mettre Imports System.Data.SqlClient en tete de module..
 
'ADINE-SQL est le nom du serveur SQL
'ADINE_NAV est le nom de la base de donnée
 
'il faut bien sur préparer préalablement (sur le serveur) la liste des utilisateurs qui ont acces à cette base


Message édité par Profil supprimé le 08-02-2005 à 13:46:54
Reply

Marsh Posté le 08-02-2005 à 14:47:48    

C'est bon j'y suis arrivé... en fait je mettais embrouillé la tête. et voilà ce que j'obtiens à la fin :  
 
Private Sub LoginCmd1_Click()
 
Dim Rs As ADODB.Recordset
Dim Connexion As ADODB.Connection
Dim StrSQL As String
 
On Error GoTo ErreurIden
 
Set Connexion = New ADODB.Connection
    Connexion.ConnectionString = "Provider=SqlOleDB;SERVER=Ghost\ESSSE1;Database=" & "Promo 2002-2005" & ";User ID=" & LoginText1 & ";Password=" & LoginText2 & ""
    Connexion.Open
 
Unload Login
Accueil.Show
 
Exit Sub
 
ErreurIden:
    MsgBox "Mauvais login ou mot de passe !!"
 
End Sub
 
Mais par contre j'aimerais te poser une toute dernière question et après je te laisserais :)
 
Dans ce même prog, il y a une combobox où je veux mettre les différentes tables sur lesquelles les utilisateurs travailleront, comment faire STP... ? Merci...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed