bonjour,
je voudrais bien savoir comment faire sur delphi un login ( utilisateur) (sa) et mot de passe pour accéder a plusieurs base de donnes sur serveur sql a travers combobox ....et merci d'avance
bonjour,
je voudrais bien savoir comment faire sur delphi un login ( utilisateur) (sa) et mot de passe pour accéder a plusieurs base de donnes sur serveur sql a travers combobox ....et merci d'avance
salut
il Te suffit de creer une fenetre avec login et mots de passe
et de verifier si ceux-ci sont correcte ... ce qui implique bien evidement une gestion des droit d'utilisateur sur un serveur et une base unique
ensuite tout depend de ce que tu utilise pour te connecter a la base de donnée
la premeire chose a faire c'est de te connecter au serveur ..
une fois connecté au serveur tu recherche les bases sur ce serveur
par exemple pour sqlserveur pour connaitre les base disponible sur le serveur tu fait une requette
avec le resulta de cette requette tu remplis ton combobox
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3SELECT name AS BaseDedonneeDuServeur FROM sysdatabases
tu peut par exemple faire un truc comme ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 if (Database.Connected) then begin Query.SQL.Text := 'select name from sysdatabases order by name'; try Query.Open; Query.First; while not(Query.Eof) do begin comboBase.Items.Append(Query.Fields[0].AsString); Query.Next; end; finally Query.Close; end; comboBase.ItemIndex := comboBase.Items.IndexOf('master'); end;
decris nous exactement ce que tu envisage de faire et ce que tu as deja essayé de faire pour que l'on puisse mieux orienter notre aide
Blaise PascalNous souhaitons la vérité et nous trouvons qu'incertitude. [...]
Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
PS : n'oubliez pas le tag
bonjour,
Je résume j'ai Trois base de donnes sur sql serveur base_2011,base_2012,base_2013 avec sa et mot de passe et je voudrais lister c'est trois base de donnes sur combobox (delphi) et faire une connection automatique entre combobox et adoconnection a travers odbc et merci pour votre précieux aide ....
salut
la premiere chose à faire c'est de te connecter au serveur
ensuite tu interroge la base master de ton serveur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 procedure CONNECTEDSERVEUR(Serveur_name: string ); var AdoConnection : TAdoConnection; DataBase : String; begin Try AdoConnection := TADOConnection.Create(nil); if AdoConnection.Connected then // already connected? begin MessageDlg('Already connected', mtInformation, [mbOK], 0); Exit; end; begin AdoConnection.LoginPrompt:=False;//dont ask for the login parameters AdoConnection.ConnectionString := Format('"Provider=MSDASQL;Driver={SQL Server Native Client 10.0};Server=%s;Trusted_Connection=Yes"',[Serveur_name]); AdoConnection.Connected := True; //open the connection end; Except On E: Exception do begin MessageDlg('Cannot connect to serveur "' + Serveur_name + '"!.' + #13 + #10 + 'Please report this problem (is SQL Server running?)', mtError, [mbOK], 0); end; end; end;
avec une requette du typeça c'est sous sybase mais sqlserveur a de grande similitude
Code : Sélectionner tout - Visualiser dans une fenêtre à part select name from master.dbo.sysdatabases order by name
cette requette te fournis toutes les base accessible sur le serveur
je t'ai fournis le code pour le remplissage de la combobox
il ne te reste plus qu'a te reconnecter a la base voulue
je pense que la procédure de connexion devrais ressembler à ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 procedure CONNECTEDDATABASE(Serveur_name,Base_name,user_name,password: string ); var AdoConnection : TAdoConnection; DataBase : String; begin Try AdoConnection := TADOConnection.Create(nil); if AdoConnection.Connected then // already connected? begin MessageDlg('Already connected', mtInformation, [mbOK], 0); Exit; end; begin AdoConnection.LoginPrompt:=False;//dont ask for the login parameters AdoConnection.ConnectionString := Format('"Provider=MSDASQL;Driver={SQL Server Native Client 10.0};Server=%s;Database=%s;Uid=%s;Pwd=%s;"',[Serveur_name,Base_name,user_name,password]); AdoConnection.Connected := True; //open the connection end; Except On E: Exception do begin MessageDlg('Cannot connect to databse "' + DataBase + '"!.' + #13 + #10 + 'Please report this problem (is MySql running?)', mtError, [mbOK], 0); end; end; end;
Blaise PascalNous souhaitons la vérité et nous trouvons qu'incertitude. [...]
Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
PS : n'oubliez pas le tag
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager