Capitolul 9. Baze de date și baze de date vizuale
Dacă întrebați un programator profesionist, de ce am nevoie de Visual Basic, va răspunde - în cele mai multe cazuri, pentru programarea bazelor de date. Da, într-adevăr, deoarece computerul - un instrument de prelucrare a informațiilor, și în lumea afacerilor, informații sunt stocate în principal în baza de date, astfel încât sarcina importantă de limbaj de programare, dacă el vrea să fie necesar - pentru a oferi rapid, comod și de încredere pentru a lucra cu ei.
Aici vă voi prezenta modul în care Visual Basic funcționează cu bazele de date. Este doar o cunoștință. Veți fi capabil de a efectua unele operațiuni de baze de date de bază și prezentarea generală a subiectului care este suficient, dar pentru activitatea profesională care aveți nevoie pentru a citi cărți mai groase, mai ales că aproape fiecare carte groasă pe Visual Basic se ataseaza baze de date aproape jumătate din grosimea acestuia.
9.1.Conceptul bazelor de date
Care este baza de date, am explicat în 1.2 exemplul unei baze de date a jocurilor pe calculator. În majoritatea covârșitoare a cazurilor, baza de date este una sau mai multe tabele dreptunghiulare, cum ar fi, de exemplu, acest tabel, dedicat boxerilor:
Clasament în box
În plus față de aceste sarcini principale de baze de date decente permite utilizatorului să modifice conținutul înregistrărilor, adăuga noi înregistrări de baze de date, șterge de imprimare inutile într-o formă convenabilă a informațiilor dorite din baza de date, permite utilizarea software-ului pentru a automatiza cele mai multe operații de baze de date intensivă a forței de muncă și de a se adapta baza de date la nevoile specifice ale utilizatorului.
DBMS cel mai aproape de Visual Basic este Microsoft Access, care face parte din Microsoft Office Professional. În Access, puteți lucra cu baze de date reale fără programare. Programarea lucrului în Access este realizată într-o limbă specială Visual Basic for Applications, care este un "dialect" al limbajului Visual Basic pentru pachetul Microsoft Office.
Dacă vă decideți să vă ocupați de baze de date, atunci aveți două moduri:
Învățați rapid la nivelul de acces al utilizatorului și apoi lucrul cu bazele de date va fi convenabil și plăcut și nu veți simți nevoia de programare în curând. Când o simțiți, veți fi programat pe practic Visual Basic pentru aplicații.
Pentru a învăța să lucreze cu baze de date în mediul Visual Basic. Este mult mai dificil, dar va începe aproape imediat să programeze și să fie capabil să creeze proiecte care lucreaza cu baze de date combinate cu un domeniu complet diferit de prelucrare a informațiilor (de exemplu, jocuri).
Titlul cărții mă obligă să aleg a doua cale.
9.2.Creez baza de date cu Visual Data Manager
Să ne dorim să creăm o bază de date cu cărți publicate de editura mitică "Contact" în vremuri miticale. Baza de date ar trebui să arate astfel:
Sarcina noastră este să învățăm să implementăm cu această bază toate operațiile de bază necesare: crearea, umplerea, modificarea, sortarea, filtrarea.
Desigur, nu vom folosi programarea programată la domiciliu, ca în 1.2. În Visual Basic există instrumente speciale pentru o execuție mai rapidă și mai convenabilă a tuturor acestor operații. Mai întâi folosim VisualDataManager. localizat în meniul Add-Ins. Este în esență un DBMS nepretențios care rulează autonom față de mediul Visual Basic. Dar o folosesc doar pentru a crea o structură de baze de date.
Să începem să ne creăm baza de date, dar mai întâi vom veni cu numele tabelului - "Cărți" (un nume separat pentru tabel este necesar deoarece baza de date poate conține mai multe tabele). Și pentru câmpuri, vom veni cu nume: Nazvanie, Avtor, Data, Kol_stran.
Add-InsVisualDataManagerFileNewMicrosoftAccess (am ales Microsoft Access, acest lucru înseamnă că această bază de date va fi în activitatea viitoare, nu numai din Managerul de date video, dar în Access) Version7.0MDB. Înainte de a deschide fereastra de salvare, care vă va oferi să salvați baza de date viitoare într-un fișier cu extensia MDB. Dați fișierului numele "Cărți" și salvați-l. Visual fereastra Data Manager va dobândi formularul de mai jos (în imaginea din fereastra din stânga arată structura tabelului pe care îl va dobândi mai târziu, iar acum există aproape gol):
![Capitolul 9 bază de bază și baza de date (date) Capitolul 9 bază de date și baze de date](https://images-on-off.com/images/201/glava9visualbasicibazidannix-a5a87826.png)
Fișierul a fost creat. Este timpul pentru a crea o nouă foaie de calcul. Faceți clic dreapta în interiorul ferestrei din stânga și din meniul contextual, selectați tabel nou. Înainte de a deschide o fereastră goală structură de tabel (prezentată în figură, este deja umplut cu informații despre câmpurile de masă, iar pe stânga se poate vedea lista de câmpuri, și pe dreapta - informații despre câmpul evidențiat (Avtor) masa noastră):
![Capitolul 9 bază de bază și baza de date (date) Capitolul 9 bază de date și baze de date](https://images-on-off.com/images/201/glava9visualbasicibazidannix-f8455646.png)
Să numim masa. Apoi dați clic pe butonul Adăugați câmpul înainte de a deschide o fereastră goală pentru a adăuga un câmp (în figură se afișează deja umplut cu informații despre câmpul Nazvanie din tabelul nostru):
![Capitolul 9 bază vizuală și bază de date (bază) Capitolul 9 bază de date și baze de date](https://images-on-off.com/images/201/glava9visualbasicibazidannix-913f0b33.png)
Trebuie doar să dați un câmp numele și să îl selectați sub eticheta de tip. Restul este subtilitate. Dând clic pe OK, introduceți informații despre toate câmpurile, apoi închideți fereastra pentru a adăuga un câmp (butonul Închidere).
Câmpul poate fi șters selectându-l în fereastra de structură a tabelului și făcând clic pe butonul Eliminați câmpul.
După ce ați terminat de introdus informații despre toate câmpurile, faceți clic pe butonul Construiți tabelul și ați terminat crearea structurii de tabel. Orice altceva vom face cu alte instrumente.
9.3.Elaborarea bazelor de date. Datele și controalele DBGrid. Limba SQL.
De acum înainte, puteți rula proiectul și puteți lucra cu baza de date programabil. Cu toate acestea, nu este foarte convenabil să faci acest lucru fără a vedea tabela de bază de date în sine în timp ce lucrează, și datele în sine nu arată acest lucru. Există mai multe moduri de ao vedea. Cel mai bun lucru este să folosiți controlul DBGrid. Acesta este situat astfel: ProiectComponentsMicrosoft Data Bound Grid Control 5.0. Plasați-l pe formular. Lăsați numele său să fie DBGrid1. Lucrul va fi asociat cu date, tabelul căruia va fi vizibil în modul de funcționare. Să-i stabilim proprietățile:
În primul rând, pentru că proiectul poate fi prezent mai multe elemente de date, trebuie să specificați cu care va trebui să lucreze nostru un DBGrid, cu alte cuvinte, la care el este atașat. Pentru aceasta, setați proprietatea DataSource la Data1. Adevărat este setat, de asemenea, următoarele proprietăți DBGrid1: AllowAddNew (permite să adăugați manual noi intrări în tabel), AllowDelete (permite să ștergeți manual înregistrarea din tabel), AllowUpdate (permit schimbarea manuală a datelor în tabel). Puteți da proprietății Caption o anumită valoare.
Să începem să completați masa cu date despre cărți. Pentru a face acest lucru, rulați proiectul. Pe ecran apare o masă goală. După ce completați manual acest tabel, proiectul va arăta astfel:
![Capitolul 9 bază de bază și baza de date (date) Capitolul 9 bază de date și baze de date](https://images-on-off.com/images/201/glava9visualbasicibazidannix-5aa847f1.png)
În partea superioară vedeți elementul Data1, aspectul căruia nu este de folos, deci poate fi complet invizibil.
Datele pe care le introduceți în câmp sunt verificate pentru apartenența la tipul de câmp. Rețineți că Visual Basic a "scurtat" acele date pe care le consideră "și atât de ușor de înțeles".
Pentru a șterge o înregistrare, selectați-o făcând clic pe dreptunghiul gri din stânga înregistrării și apăsați tasta Delete. Puteți extinde și restrânge liniile și coloanele prin tragerea marginii dintre dreptunghiurile gri.
După finalizarea proiectului, tabela este salvată automat în fișier.
Puteți lega la date nu numai DBGrid, ci și alte elemente, de exemplu câmpurile de text. Plasați patru câmpuri de text pe formular și asociați-le cu Data1. De asemenea, asociați fiecare dintre aceste câmpuri utilizând proprietatea DataField cu câmpul tabelului. Rulați proiectul. Faceți clic pe diferitele intrări din DBGrid. Puteți vedea că valorile câmpurilor de text devin automat egale cu valorile câmpurilor din intrarea tabelului curent. În schimb, trebuie să modificăm conținutul câmpului de text, deoarece conținutul corespunzător al tabelului se schimbă.
Până în prezent, am schimbat manual conținutul bazei de date. Să vedem cum se poate face acest lucru programabil. Tabelul este împărțit în celule celulare. Există un concept al celulei actuale, cu care lucrarea se desfășoară în prezent. Este specificat de numărul de înregistrare (DBGrid1.Row) și de numărul câmpului (DBGrid1.Col). Proprietatea DBGrid1.Text indică conținutul celulei curente. Recordul cel mai de sus este numerotat 0, nu 1. Același lucru se aplică și câmpului din stânga. De exemplu, atunci când lucrăm cu baza noastră de date, fragmentul
imprimați cuvântul Dostoievski.
Iată un exemplu de procedură care cuprinde câmpul Kol_str cu numerele 2, 3, 4 în înregistrările de la 2 la 4:
Private Sub Command1_Click ()
Iată o linie care mărește data de lansare cu o zi:
DBGrid1.Text = DataAdd ("d", 1, DBGrid1.Text)
Și acum, să vedem cum cei mai simpli operatori efectuează lucruri atât de complexe precum sortarea și filtrarea. Pentru aceasta vom folosi limbajul popular universal de comunicare cu bazele de date SQL. Iată procedura care sortează baza noastră de date până la data lansării cărții:
Private Sub Command4_Click ()
Data1.RecordSource = "SELECT Avtor, Nazvanie, Date din cărți ORDER BY Data"
După finalizarea acestei proceduri, veți vedea pe ecran o astfel de tabelă:
Explicații. Deasupra am scris linia
ținând cont de faptul că tabela de date pentru funcționarea elementului Data1 va fi în întregime tabelul Cărți. Dar prima linie a procedurii noastre selectează doar trei câmpuri pentru elementul Data1: Avtor, Nazvanie, Data. Într-adevăr, în traducerea în engleză a comenzii
SELECT Avtor, Nazvanie, Date din cărți ORDERBY Date
Alegeți Avtor, Nazvanie, Date din cărți, COMANDĂ PENTRU DATE
Asta înseamnă că munca nu va fi efectuată cu toate domeniile, ci numai cu cele trei listate, iar intrările vor fi aranjate în ordinea crescării datei de lansare a cărții.
Dacă în loc de ORDER BY date scrie ORDER BY Data DESC. atunci intrările vor fi sortate în ordine descrescătoare.
doar pune declarația SELECT anterioară în acțiune.
Următoarea procedură efectuează filtrarea.
Private Sub Command6_Click ()
Data1.RecordSource = "SELECT * FROM Cărți WHERE Kol_str> 100"
Explicații. Un asterisc în expresie
SELECT * FROM cărți
înseamnă că selectăm toate câmpurile din tabelul Cărți.
WHERE Kol_str> 100
WHERE numărul de pagini> 100
și comenzi pentru a afișa numai acele cărți care sunt mai groase de 100 de pagini.
Următorul tabel ilustrează unele dintre celelalte caracteristici ale SQL:
SELECT * FROM Cărți WHERE Avtor = 'Strugatsky' ȘI Date> # 21/11/1970 #
SELECT TOP 3 * FROM Cărți ORDER BY Data DESC
Sunt afișate ultimele 3 cărți publicate de editor. Expresia ORDER BY Data DESC sortează înregistrările în ordine descrescătoare, iar expresia TOP 3 afișează numai primele 3 înregistrări din cele sortate pe ecran.
SELECT * FROM cărți WHERE Kol_str ÎNTRE 100 ȘI 200
Cărțile cu numărul de pagini ÎNTRE 100 și 200 sunt afișate pe ecran.
Proiecția Astry pentru începători. Șase tehnici pentru a călători în alte lumi. problemă pentru începători. decât pentru călătorii astrali cu experiență. Începător în curând. Edain ASTRAL PROIECȚIA PENTRU INITIAL Șase tehnici de a călători la alții.
INTREPRINDERII G. KEMEROVO "Manual de referință și informare pentru începători" Kemerovo, Ostrovsky 27 Tel. ). 3. Elaborarea unui plan de afaceri: - pentru IMM-urile incepatoare - 5 000 de ruble. - pentru SIDS activă - 15 000.
noi nu învățăm. Este pentru începători și pentru cei mai experimentați care au. BASIC Limba de bază ca și pentru începători. și pentru programatorii profesioniști Pascal Pascal. se utilizează și instrucțiunea Citire. Pentru începutul diferențelor programator în aplicarea lor.
noi nu învățăm. Este pentru începători și pentru cei mai experimentați care au. BASIC Limba de bază ca și pentru începători. și pentru programatorii profesioniști Pascal Pascal. se utilizează și instrucțiunea Citire. Pentru începutul diferențelor programator în aplicarea lor.