Lucrul cu MySQL folosind denwer

În ultimul articol de pe baza de date MySQL folosind c Denwer ne-am uitat la ce componente pot fi utilizate în acest scop, și, de asemenea analizat activitatea unei conexiuni simple la o anumită bază de date, în plus față au fost făcute în acest articol componentele necesare. În acest articol, aș dori un pic pentru a continua conversația și de a îmbunătăți ușor proiectul nostru, adăugând fluxuri în ea, pentru a fi capabil să se conecteze la baza de date prin intermediul fluxului, toate la fel, unele hosting răspunde la conexiunea este foarte lent și să nu inducă în eroare utilizatorul nostru atunci când fi folosit pentru conectarea la baza de date, dacă introduceți un nume de utilizator și o parolă incorectă, atunci programul trece în mod natural, fără a se blochează la timp de conectare, numai după ce au primit un răspuns de la serverul va returna o eroare că parola este incorectă. În plus față de adăugarea fluxului în programul nostru, aș dori în continuare să scrie un cuplu de cereri de la masa noastră.

Deci, ceea ce avem nevoie în acest moment, avem nevoie de o bază de date, un tabel în baza noastră de date și a componentelor, precum și un set de date în nostru. Deci, să setăm forma următoarelor componente

„Componentă de contact» TMyQuery într-o conexiune de proprietate - alege componenta MyConnection1 (a mea). Apoi, face o conexiune la baza de date prin intermediul fluxului. Datele pentru conexiunea am următoarele

În plus, dacă sunteți de testare acum la Denwer'e. nu uitați să porniți serverul. Am fost declarat firul următor

După aceea completați procedura noastră și Execute Conectează-te

Acum să creeze Feed nostru

Așa că acum, după cum am spus, am făcut mai multe cereri de la baza noastră de date. Voi spune un singur lucru, că principiul de a lucra cu această bază de date este la fel ca am lucrat cu acces folosind interogări. De asemenea, puteți seta pe formularul TDBGrid pentru a afișa date din baza noastra de date. Am creat un tabel cu numele și test_table cu următoarele câmpuri

Cerere pentru a adăuga datele vor arăta în felul următor

Cerere de recuperare a datelor pentru starea este după cum urmează

După cum puteți vedea cereri sunt la fel peste tot, pentru a lucra cu MySQL folosind Denwer mă ​​voi concentra mai mult - lucru cu -fields Blob și acest lucru se va termina, ca toate aproape identice.

Apropo, pentru cei care au o mașină Vreau să spun că în cazul în care colectarea de prăbușirea aparatului dumneavoastră este ajustată, este mult mai stabil, astfel încât ajusta periodic colapsul de convergență.

Codul sursă poate fi descărcat de aici

înregistrări similare

există o anumită confuzie atunci când citesc titlurile articolelor.
„Lucrul cu mysql folosind denwer» (e).
Să definim, de fapt, (conținutul articolului) descrie lucrul cu mySQL de la Delphi folosind componenta MyDAC (bun, deși a plătit (:) asa ca denver aici, la toate pentru a face cu ea denver este un buchet de apache + php + mysql pe mașina locală ... adică, de fapt, este un instrument de dezvoltare web (pentru estetică și de obicei încă scrise folosind sisteme * nix. pentru php sub vindovz în cuptor.)
Adică, dacă vorbim despre mySQL + Delfi și articol să sun la fel de bine.

Ei bine, a doua întrebare aici. De ce codul de scriere cum ar fi
Dacă este adevărat, pavilion: = true
în caz contrar (adică false) flag: = false;
Fii mai ușor flagConnected: = myConnection1.connected;

iar acest lucru nu se aplică numai valorilor boolean.
un astfel de cod în cazul în care a = 1, atunci flag: = true pavilion altceva: = false
poate fi înlocuit cu flag: = (a = 1);

și pentru a rula într-un fir separat pentru a se conecta la baza de date (în cazul în care acesta este singurul scop al fluxului), nu neapărat pentru a descrie o clasă de acest flux, de a crea o instanță de ea și așa, pur și simplu rulați funcția de a efectua în acest flux. Este, desigur, nu se va schimba, dar va arata mai compact.

scrie
încerca
ThreadConnect: = TMyThreadConnect.Create (False);
ThreadConnect.Resume;
cu excepția
pe e: Excepție fac
se încheie;
De asemenea, nu au corect. În primul rând, dacă rulați imediat după crearea de flux pentru a efectua, atunci de ce a crea dormit?
și în al doilea rând, unele proces de excepție este destinat să încerce să blocheze. eliminarea fluxului? DAK ei nu sunt niciodată pentru a prinde. Acest bloc de cod într-o lungă perioadă de timp, cu unitatea încercați cu excepția unui flux se va conecta în continuare la baza de date. adică este necesar să se excludă fluxul în fluxul și procesul. Cu excepția cazului în desigur, pe care doriți să prindă eksepshen o conexiune la baza de date. Cu toate acestea, dacă doriți să se ocupe de crearea de excepții Crearea de flux (care poate avea loc, în principiu,), care nu se plânge.

doar despre interogările sql.
de ce scrie sql.clear apoi sql.add ( '....')
pur și simplu se numără sql.text dumneavoastră: = '...'
conținutul vechi vor fi suprascrise, un nou rafinament. nici o acțiune de neînțeles inutile.