Introducerea numelui de utilizator și a parolei la conectarea la baza de date

Pentru a anula solicitarea de introducere a unui nume de utilizator și a unei parole atunci când vă conectați la baza de date, este suficient să setați proprietatea TADOConnection.LoginPrompt la False. Dar dacă numele de utilizator și parola sunt necesare pentru a vă conecta la baza de date, atunci trebuie luate câțiva pași suplimentari.







Pentru a testa dacă această condiție este necesară, puteți să protejați baza de date cu o parolă. În Microsoft Access, această operațiune se efectuează în modul exclusiv, care este activat în fila Avansat din caseta de dialog Opțiuni (meniul Instrumente, Opțiuni). De asemenea, puteți utiliza pur și simplu baza de date ddgADOPW.mdb localizată pe CD-ROM-ul inclus (parola este ddg în Figura 9.8).

Pentru a utiliza baza de date ddgADOPW.mdb, trebuie să creați un nou nume de sursă de date pentru acesta, de exemplu, DdgADOOrdersSecure.

Acum, șirul de conectare arată astfel:

Provider = MSDASQL.1; Password = ddg; Persist Security Info = Adevărat;

ID utilizator = Admin; Sursa de date = DdgADOOrdersSecure

Fiți atenți! Aici sunt indicate atât parola, cât și numele de utilizator (ID). Acum puteți seta proprietatea Connected a componentei TADOConnection la True (cu proprietatea LoginPrompt setată la False).







Introducerea numelui de utilizator și a parolei la conectarea la baza de date

Fig. 9.8.Adăugarea unui nume de utilizator și a unei parole la șirul de conexiuni

Acum vom înlocui caseta de dialog standard de interogare la conectarea la baza de date. Pentru a face acest lucru, scoateți numele de utilizator și parola de la proprietate conectări tionString și un manipulator de evenimente TADOConnection.OnWillConnect așa cum se arată în Listarea 9.1 9.1.Listing. Rutina evenimentului OnWillConnect Procedura TForm1.ADOConnection1WillConnect (Conexiune: TADOConnection;

Var ConnectionString, Nume utilizator, Parolă: WideString;

Var ConnectOptions: TConnectOption;

var EventStatus: TEventStatus);

dacă InputQuery ("Furnizați nume de utilizator"

'Introduceți numele de utilizator', vUserID) apoi

dacă InputQuery ("Provide Password",

'Introduceți parola', vPassword) thenend;

Acesta este un exemplu simplificat de implementare a introducerii unui nume de utilizator și a unei parole. În aplicațiile reale, implementarea acestei casete de dialog este probabil mai complicată.

La prima vedere poate părea că punerea în aplicare a unui nume de utilizator și PA-Rola ar trebui să fie efectuate în același mod ca și pentru TDatabase componentă handler TADOConnection.OnLogin co-existență. În schimb, utilizează evenimentul TADOConection.OnWillConnnect, care este înfășurarea evenimentului standard ADO. În acest caz, evenimentul OnLogin este utilizat de clasa TDispatchConnection, concepută pentru a suporta o arhitectură pe mai multe niveluri.







Articole similare

Trimiteți-le prietenilor: