Conectarea la mysql din aplicația lazarus

Să încercăm să răspundem la întrebarea, cum să conectăm Lazarus la baza de date MySQL și cum să realizăm interogări simple folosind componentele principale ale aplicației Lazarus. Nu vom folosi componenta de cartografiere a datelor, vom arăta doar principiul interacțiunii cu bazele de date. Și vreau să vă atrag atenția asupra faptului că programarea Lazăr și Delphi este în esență similară, iar codul lor nu este foarte diferit.







La fel ca Delphi, Lazarus este mediul RAD (dezvoltarea rapidă a aplicațiilor), care vă permite să creați rapid o interfață de utilizator. Spre deosebire de Delphi, Lazarus este un mediu multi-platformă. Sistem de operare acceptat, cum ar fi GNU / Linux, Microsoft Windows, Mac OS X, FreeBSD, WinCE. Poate că transformarea proiectelor Delphi în proiectele Lazarus.

Un exemplu de conectare a unei aplicații Lazarus la o bază de date MySQL:

Trebuie să creați un proiect nou în Lazarus:

Un nou formular va fi generat automat.

Download - Reguli de instalare MySQL în Lazarus (20,17 MB) = 4,55 min.

Încercați să o întindeți (Figura 1) și redenumiți-i titlul la "TryMySQL".

Figura 1: Asta ar trebui să se întâmple

Se pune pe un formular (ca în figura 1) tEditează trei tab-ul standard pentru componente și peste fiecare dintre ele, se pune componenta TLabel. Pune-le antete 'host' (și numele HostLLabel, HostEdit), 'USERNAME' (UserLabel, UserEdit) și 'Parola' (PasswdLabel și PasswdEdit). Alternativ, puteți utiliza componenta TLabelledEdit din fila Suplimentare.

Găsiți proprietăți în componenta PasswordChar PasswdEdit, și schimbați „*“, astfel încât atunci când introduceți parola, atunci aceste simboluri ( „************“) va fi afișat în schimb. Asigurați-vă că vă asigurați că proprietatea Text a acestei componente nu conține text.

Trebuie să plasați încă o componentă Tedit și Tabel în colțul din dreapta sus al formularului (Figura 1). Schimbați titlul la "Introduceți comanda SQL" și redenumiți componenta la CommandEdit.







Plasați trei butoane pe formular, două pe partea stângă sub componentele TEdit și una pe partea dreaptă sub componenta comenzilor.

Editați proprietățile Label (nume) butoanele stânga de pe „Conectare la baza de date“ (ConnectButton) și „ieșire“ (ExitButton) și dreapta - „Trimite interogare“ (QueryButton).

Plasați un TMemo mare pe formularul cu titlul "Rezultate" (ResultMemo) în partea stângă jos, astfel încât restul spațiului să fie umplut. Găsiți proprietatea ScrollBars și setați valoarea ssAutoBoth astfel încât componenta să poată derula textul atât vertical cât și orizontal. Setați proprietatea WordWrap la True.

Plasați linia de stare (TStatusBar din fila Common Controls) pe formularul din partea de jos a formularului și scrieți linia "TryMySQL" în proprietatea SimpleText:

Acum trebuie să scrieți câțiva agenți de manipulare.

În partea stângă a formularului, avem trei componente TEdit pentru a introduce numele gazdei, numele de utilizator și parola. Odată ce datele solicitate sunt introduse în ele, faceți clic pe butonul Conectare. Handlerul OnClick pentru acest buton se bazează parțial pe modulul pentru FPC, pe care l-am menționat mai sus.

Rezultatele interogărilor către baza de date nu pot fi afișate imediat utilizând instrucțiuni de scriere Pascal sau writeln. mai intai trebuie sa fie convertite in siruri de caractere si sa fie trimise catre componenta TMemo.

Deși Pascal scrie operatori și writeln și sunt capabili de a converti tipurile de „on the fly“, în acest caz, utilizarea TMemo componenta a textului de ieșire necesită tip de conversie directă în formă de șir de caractere, respectiv, variabile astfel Pchar trebuie să fie convertite în șiruri prin utilizarea StrPas, iar numerele vor pentru a fi convertit prin funcția IntToStr.

Este necesar să adăugați linii la TMemo utilizând:

Astfel, handler-ul ConnectButton va arăta astfel:

Și câmpul de introducere din dreapta ne permite să introduceți comenzi SQL fără punct și virgulă "; “. de îndată ce introduceți sintaxa interogării - faceți clic pe butonul SendQuery - interogarea va fi executată și rezultatul va fi afișat în componenta ResultsMemo.

Managerul SendQuery se bazează din nou pe versiunea FPC, cu excepția utilizării conversiei de tip pentru afișarea ulterioară a șirurilor de caractere.

Diferența dintre programul pe CFP și programul constă în faptul că, în cazul unei erori cu privire la programul Free Pascal pentru a finaliza lucrările, dar în aceeași sesiune a MySQL va rămâne deschisă. În cel de-al doilea program, comanda va reveni la formularul principal și puteți încerca să intrați din nou. În cele din urmă, cererea în al doilea caz, iese în mod normal (cu închiderea MySQL), atunci când este apăsat butonul Exit.

Repet încă o dată, programarea Lazarus și Delphi este în esență similară, iar codul de program pentru ei nu este foarte diferit. Nu va fi dificil să înțelegeți și să înțelegeți diferențele nesemnificative dintre programele de scriere.

Mai jos este codul handlerului pentru butonul SendQuery:

În următorul articol, vom examina: - "Un exemplu de creare a unei tabele de baze de date în lazarus".







Articole similare

Trimiteți-le prietenilor: