Aproape fiecare organizație are propria bază de date. Dar ceea ce este cu adevărat acolo, chiar și site-urile le folosesc pentru a face mai ușor și mai ușor să lucrați cu informații. Într-adevăr, vă permit să faceți calcule fără probleme, să găsiți rapid datele necesare și, în general, să creați pur și simplu ordine în orice informație.

Adesea, programatorii sunt implicați în crearea lor, deoarece acesta este un proces complex care este predat în instituțiile de învățământ superior. Există, de asemenea, multe lecții, cursuri și seturi de programe pentru crearea de software pentru dezvoltarea bazelor de date, o varietate foarte mare, vă puteți confunda cu ușurință. Acest articol va discuta unele dintre programele de bază pentru dezvoltarea bazelor de date.

Despre SQL

SQL este un limbaj de programare folosit pentru a crea baze de date. Dacă îl instalați pe computer și începeți să creați o bază de date, nu va fi foarte convenabil. Acest lucru se datorează faptului că SQL în sine nu are niciun shell grafic, iar interogările către baza de date trebuie trimise în general prin linia de comandă. Din acest motiv, au apărut diferite tipuri de programe care simplifică dezvoltarea bazelor de date. Cu toate acestea, învățarea elementelor de bază ale acestei limbi merită totuși. Dintr-o dată trebuie să faceți o cerere, iar programul nu funcționează corect.

Microsoft Access

Acest program de creare a bazelor de date este foarte familiar pentru mulți. La urma urmei, vine în suita de programe Microsoft Office. Acest program este unul dintre cele mai ușor de învățat, deoarece cunoașterea limbajului de programare SQL nu este practic necesară acolo. Puteți specifica doar ce interogare să faceți, iar programul va compune interogarea SQL în sine.

Despre relevanța programului. Până în prezent, bazele de date ale multor organizații au fost realizate folosind Microsoft Access. Într-adevăr, programul în sine este foarte ușor, există o interfață intuitivă. Mai mult, elementele de bază ale utilizării Access sunt predate chiar în școală și la începutul colegiului!

PhpMyAdmin

Accesul, desigur, este un program bun, dar dacă aveți nevoie de o bază de date pentru un site web, nu o va face. Apoi, PhpMyAdmin vine în ajutor. Este un program foarte util pentru crearea bazelor de date. Instalarea pe computer durează ceva timp, iar în timpul instalării este ușor să faci ceva greșit și nu va funcționa. Prin urmare, atunci când instalați acest program pentru a crea baze de date, trebuie să urmați cu strictețe instrucțiunile. Dar un alt plus al PhpMyAdmin este că poate fi accesat prin internet ca site web! De exemplu, aveți un site web care este alimentat de WordPress. Va avea o bază de date. Și dacă aveți un site cu o găzduire bună, atunci, cel mai probabil, lucrul cu bazele de date va fi efectuat prin PhpMyAdmin și va fi posibil să îl accesați prin panoul de control al găzduirii.

Un alt program de creare a bazelor de date. Este gratuit, dar există și o versiune cu plată, cu funcții îmbunătățite. Este ușor să creați legături cu tabele în acest program și, într-adevăr, este convenabil să lucrați cu. De asemenea, un plus este că puteți afișa baza de date în formă grafică. Majoritatea oamenilor preferă acest program atunci când lucrează cu baze de date. În principiu, PhpMyAdmin nu este inferior în ceea ce privește capacitățile, dar este totuși mai destinat să lucreze cu o bază de date de site-uri.

Acest articol a acoperit programele de bază pentru crearea bazelor de date. De fapt, există o mulțime de ele, astfel încât toată lumea alege un instrument pentru sine, dar dacă tocmai începeți și doriți să studiați acest domeniu, atunci este recomandat să lucrați cu MySQL WorkBench. Odată ce ați învățat noțiunile de bază ale SQL, nu va face o mare diferență pentru dvs. unde să lucrați, deoarece interogările sunt aceleași peste tot. De asemenea, este convenabil ca, după ce ați creat o bază de date într-un singur program, să o puteți deschide printr-un alt software, care este, de asemenea, conceput pentru a funcționa cu baza de date. Când creați software cu o bază de date, nu puteți face fără aceste cunoștințe. Mai mult, având în stăpânire SQL, puteți chiar să creați propriul software pentru dezvoltarea și editarea bazelor de date.

Să creăm o aplicație simplă de bază de date care afișează informații din tabelul „Turisti” și o înregistrare a tabelului „Informații turistice” din baza de date Microsoft Access asociată cu înregistrarea curentă a tabelei Turisti.

Pentru a face acest lucru, să creăm o aplicație Windows goală. Aspectul mediului

dezvoltarea este prezentată în Figura 39.

Figura: 39. Aplicație goală

În Figura 39, este evidențiat grupul de componente „Date”, care conține componente pentru accesarea și manipularea datelor.

Legarea datelor bazei de date la formular se realizează de către componenta „Binding Source”. Să-l transferăm în formular. După plasarea acestuia pe formular, mediul de dezvoltare ia următoarea formă (Fig. 40).

Figura: 40. Sursa de legare a componentelor din formular

Componenta nu este vizuală, deci este afișată într-un panou suplimentar. Proprietatea principală a componentei este proprietatea DataSource, care indică sursa de date. În mod implicit, proprietatea este goală, deci trebuie să-i formați valoarea. Când această proprietate este selectată, următoarea fereastră apare în fereastra de proprietăți (Fig. 41).

Figura: 41. Lista surselor de date

Lista este în prezent goală, deci trebuie să creați o nouă sursă de date alegând comanda Adăugare sursă de date de proiect pentru a crea o nouă sursă de date și a vă conecta la aceasta. Apare următoarea casetă de dialog (fig. 42).

Figura: 42. Lista surselor de date

Acest dialog oferă următoarea selecție a surselor de date:

Baza de date - Baza de date;

Serviciu - Un serviciu este un fel de serviciu care oferă date. Cel mai adesea acesta este un serviciu Web;

Obiect - Un obiect pentru selectarea unui obiect care va genera date și obiecte cu care să lucreze.

În cazul nostru, trebuie să selectați elementul „Baza de date”. Apare fereastra de selectare a conexiunii de date (Fig. 43).

Figura: 43. Alegerea unei conexiuni de date

Scopul acestui dialog este de a crea un șir de conexiune care descrie parametrii de conexiune pentru motorul ADO, cum ar fi tipul bazei de date, locația sa, numele de utilizator, caracteristicile de securitate etc.

Lista verticală a dialogului conține toate conexiunile create anterior. Dacă conexiunea necesară nu este în listă, atunci ar trebui să utilizați butonul „Conexiune nouă”. Apăsarea butonului duce la apariția următorului dialog (Fig. 44).

În acest dialog, selectați tipul sursei de date (în acest caz Microsoft Access), numele bazei de date (în acest caz, numele și locația fișierului bazei de date), numele de utilizator și parola utilizate pentru conectarea la baza de date. Butonul „Avansat” vă permite să setați un număr mare de parametri legați de diverse detalii ale mecanismului ADO. Utilizarea butonului „Testare conexiune” vă va asigura că parametrii introduși sunt corecți și că conexiunea funcționează.

Figura: 44. Crearea unei noi conexiuni

Ultimul pas al dialogului este să selectați acele tabele sau alte obiecte de bază de date care sunt necesare în această sursă de date. Fereastra de selecție este prezentată în Figura 45.

Figura: 45. Selectarea tabelelor necesare

În această fereastră, sunt selectate tabelele „Turiști” și „Informații turistice”. Deoarece în baza de date nu au fost create alte obiecte decât tabele, numai tabelele sunt afișate în Figura 45. Aceasta finalizează crearea sursei de date. Când faceți clic pe Finalizare, un set de date apare lângă BindingSource pe formular.

Acum datele conectate mai sus trebuie să fie afișate pe formular. Cea mai simplă modalitate de afișare a datelor este utilizarea componentei DataGridView din grupul de componente Date. Componenta este vizuală și arată astfel în formular (Fig. 46).

Figura: 46. \u200b\u200bComponent DataGridView

Apare imediat fereastra de setări a componentelor, care determină opțiunile sale pentru editarea datelor: „Activați adăugarea”, „Activați editarea”, „Activați ștergerea”; capacitatea de a schimba succesiunea coloanelor: „Activați reordonarea coloanelor”; precum și capacitatea de a andoca în containerul părinte.

Pentru ca componenta să afișeze date, este necesar să selectați o sursă de date în lista derulantă. Alegerea listei derulante duce la apariția următorului dialog (Fig. 47).

Figura: 47. Selectarea unei surse de date pentru DataGridView

În acest caz, am selectat tabelul „Turiști” ca sursă de date. Această selecție modifică afișajul după cum urmează (Fig. 48).

Figura: 48. Component DataGridView afișează structura tabelului

În figură, puteți vedea că există o altă componentă BindingSource și o componentă TableAdapter care funcționează cu tabelul Turisti. Vă rugăm să rețineți că în timpul proiectării sau în timpul dezvoltării, datele din tabel nu sunt afișate.

Acum trebuie să afișați date din tabelul de informații turistice conectat. Pentru a face acest lucru, vom plasa încă o componentă DataGridView pe formular și vom selecta următoarele ca sursă de date (Fig. 49).

Figura: 49. Selectarea unei surse de date pentru al doilea DataGridView

Aici, sursa de date nu este în sine tabelul „Informații turistice”, ci sursa obligatorie dintre tabelele „Turiști” și „Informații turistice”. Această selecție asigură că numai acele rânduri sunt selectate din tabelul Informații turistice care sunt asociate cu rândul curent din tabelul Turisti. De asemenea, asigură actualizarea și ștergerea corectă a datelor asociate. Funcționarea aplicației rezultate este prezentată în Figura 50.

Figura: 50. Aplicația bazei de date la locul de muncă

Navigarea prin date folosind tastele săgeată este incomodă. Există o componentă BindingNavigator pentru a simplifica navigarea prin date. Așezați-l pe formular (fig. 51).

Figura: 51. Componenta BindingNavigator din formular

Această componentă vă permite să navigați între înregistrările tabelului, să adăugați și să ștergeți rânduri de tabel. Funcționalitatea și aspectul componentei sunt personalizabile, deoarece este o bară de meniu ToolStripContainer.

Proprietatea care definește tabelul care urmează să fie navigat este proprietatea BindingSource. Setați valoarea acestei proprietăți la „TouristBindingSource”. În funcțiune, componenta arată astfel (Fig. 52).

Figura: 52. Componenta BindingNavigator la locul de muncă

Editarea datelor în celulele componentei DataGridView cu setări adecvate este posibilă, dar incomodă și nu rațională. În special, este dificil să verificați valorile introduse pentru erori. Prin urmare, pentru tabelul „Turiști”, vom crea un formular de ecran care permite afișarea datelor în componentele TextBox și editarea acestora. Pentru a face acest lucru, plasați un container de tip panou pe formular și pe el trei componente TextBox după cum urmează (Fig. 53).

Figura: 53. Panou ecran pentru editarea înregistrărilor tabelului „Turiști”

Acum este necesar să legați componentele TextBox la câmpurile corespunzătoare din tabelul „Turisti”. Pentru a face acest lucru, utilizați proprietatea din grupul DataBindings - Advanced, prezentată în Figura 54.

Figura: 54. Proprietatea "DataBindings - Advanced"

Selectarea acestei proprietăți duce la apariția dialogului prezentat în Figura 55. Acest dialog vă permite nu numai să legați datele, ci să setați și un eveniment în cadrul căruia datele vor fi actualizate, precum și formatarea datelor atunci când sunt afișate.

Pentru componenta de top TextBox din lista derulantă Binding, selectați sursa de date „TouristsBmdmgSource” și câmpul sursă - „Lastname”. Pentru componentele TextBox din mijloc și din partea de jos, selectați aceeași sursă de date și respectiv câmpurile „Nume” și „Patronimic”.

Aplicația dezvoltată în funcțiune arată după cum urmează (Fig. 56).

Figura: 55. Casetă de dialog pentru proprietatea „DataBindings - Advanced”

Figura: 56. Legarea datelor la componentele vizuale

Cu toate acestea, când se fac modificări, toate datele noi rămân doar în formular. Nu sunt stocate în baza de date și, bineînțeles, nu vor fi prezente atunci când aplicația este apelată din nou. Acest lucru se datorează faptului că datele au fost încărcate într-un set de date, care este o copie a tabelului în memorie. Toate acțiunile sunt efectuate cu această copie. Pentru ca modificările să fie reflectate în baza de date, trebuie să executați metoda de actualizare a clasei TableAdapter. Astfel, în aplicația dezvoltată este necesar să plasați butonul Actualizare și să scrieți următorul cod de program în gestionarul de evenimente Click:

turiștiTabelAdapteGUpdate (bDTur_firmDataSet); info_about_touristsTableAdapter.Update (bDTur_firmDataSet);

Acest cod actualizează informațiile din tabelele „Turiști” și „Informații turistice” furnizate de sursa de date. Rețineți că această metodă este supraîncărcată, iar variantele sale vă permit să actualizați atât un singur rând într-un tabel, cât și un grup de rânduri.

Trimite-ți munca bună în baza de cunoștințe este simplu. Folosiți formularul de mai jos

Studenții, studenții absolvenți, tinerii oameni de știință care folosesc baza de cunoștințe în studiile și munca lor vă vor fi foarte recunoscători.

postat pe http://www.allbest.ru/

Introducere

3. Modele de organizare a datelor

4. Baze de date relaționale

6. Modelul infologic

7. Model logic

8. Structura tabelelor

12. Crearea tabelelor

16. Generarea rapoartelor

17. Listarea programelor

Concluzie

Bibliografie

Introducere

Pentru a lua decizii informate și eficiente în activitățile de producție, în managementul economic și în politică, un specialist modern trebuie să poată primi, acumula, stoca și prelucra date folosind computere și comunicații, prezentând rezultatul sub formă de documente vizuale. Prin urmare, este atât de important să puteți lucra cu baze de date.

O bază de date este o structură organizată pentru stocarea informațiilor. Bazele de date moderne stochează nu numai date, ci și informații.

Despre Delphi este vorba despre un cadru rapid de dezvoltare a aplicațiilor. Aceasta este o tehnologie de programare vizuală, adică utilizatorul își întocmește viitorul program și vede rezultatele muncii sale chiar înainte de lansarea programului în sine. Practic, procesul de scriere a unei aplicații în sine este împărțit în două părți. Primul este că programatorul plasează elementele necesare pe ferestrele programului său, poziționează, setează dimensiunile necesare și modifică proprietățile. Al doilea este de fapt scrierea codului programului, descrierea proprietăților elementelor care sunt disponibile numai în timpul funcționării aplicației, descrierea reacțiilor la evenimentul apariției unei ferestre, apăsarea unui buton etc. Pentru a seta orice proprietăți, un element al aplicației dezvoltate nu trebuie să scrie șiruri de text masive; modificați această proprietate în inspectorul de obiecte (așa-numitul monitor de proprietate al elementului selectat). Această modificare va adăuga sau modifica automat codul programului.

Acesta este un mare plus în tehnologia de programare vizuală. Atunci când își creează sau modifică produsul software, utilizatorul, necunoscând sau neacordând atenție unor proprietăți ale elementului de program, ci folosind doar cele necesare, scrie un produs de lucru complet terminat, acționând uneori pe picior de egalitate în complexitate, cu cele scrise într-un editor non-vizual.

Sarcina noastră este de a crea o bază de date care să conțină date despre curriculum-ul procesului educațional. După ce ați completat baza de date, trebuie să efectuați o analiză selectivă folosind interogări SQL.

program tabel infologic de baze de date

1. Cerințe generale pentru dezvoltarea aplicațiilor de baze de date

Baza de date trebuie să conțină

a. Tabelele pentru stocarea datelor, cel puțin 3 tabele. Fiecare tabel trebuie să conțină cel puțin 10 înregistrări.

b. Formulare pentru vizualizarea ușoară, introducerea, editarea și căutarea datelor, formarea și afișarea interogărilor. Formularul trebuie să conțină explicații, sugestii. Când completați câmpurile formularului, pentru seturi cunoscute de valori, utilizați capacitatea de a selecta valori dintr-o listă. Formularele ar trebui să fie conectate ori de câte ori este posibil pentru a optimiza navigarea postării. Formularul trebuie să conțină cât mai multe informații pentru utilizator. Asigurați gestionarea erorilor semantice care apar.

c. Rapoarte care conțin toate tabelele, formularele, interogările

d. Meniu pentru accesarea diverselor obiecte din baza de date

e. Ajutor care conține o descriere completă a sarcinii

2. Pentru programarea bazelor de date este necesar să se utilizeze literatură suplimentară despre limbajul SQL, sistemul de programare DELPHI.

3. Lista și metodele problemelor rezolvate independent

1. Analiza enunțului problemei și a subiectului.

2. Proiectarea infologică, fundamentarea obiectelor informaționale, domeniilor, atributelor, legăturilor, întocmirea unui model infologic.

3. Proiectarea logică, construcția și fundamentarea relațiilor de bază, normalizarea.

4. Proiectarea interogărilor SQL.

5. Programarea structurii și funcțiilor generale din baza de date.

6. Proiectarea unei baze de date într-un mediu software.

7. Dezvoltarea interfeței programului.

8. Executarea unei note explicative.

4. Criterii pentru evaluarea competențelor dobândite pentru cursuri

Criteriile sunt completate de profesor la apărarea muncii, prezentate în tabelul 1. Pe baza notei medii, se acordă nota lucrării la curs.

Tabelul 1. Evaluarea competențelor

Numele competenței

Obiect de evaluare

Înțelegeți și respectați cerințele

Rezultate obținute (DB) (volum, structură, respectarea sarcinii)

Comunicare scrisă

Calitatea prezentării în nota explicativă, claritate, volum, structură, respectarea sarcinii.

Cunoașteți și aplicați elemente ale sistemului de programare DELPHI

Componente ale aplicației bazei de date, răspunsuri la întrebări despre implementarea bazei de date

Cunoașteți și aplicați elementele tehnologiei bazelor de date

Răspunsuri la întrebări legate de proiectare, eventual în format test

Înțelegeți necesitatea tehnologiei bazelor de date

Introducerea notei explicative

Planificarea muncii, organizarea muncii

Timpul de răspuns

Rezolvați singur problemele

Lista și metodele problemelor rezolvate independent

Comunicarea orală

Protecția publică a bazei de date

Abilitatea de a analiza, sintetiza

Model de baze de date logice și infologice

Angajament pentru rezultate de calitate

Calitatea muncii efectuate, indicatori ergonomici, calitatea funcționării.

Abilitatea de a genera idei noi

Calitatea interfeței, funcții suplimentare ale bazei de date, nu sunt luate în considerare în sarcină.

Abilitatea de a gestiona (căuta) informații

Numărul de resurse de informații găsite și utilizate în cadrul cursului, numărul de consultanți.

2. Concepte de bază și clasificare a sistemelor de gestionare a bazelor de date

Baza de date (DB) este o colecție de date structurate stocate în memoria unui sistem de calcul și care reflectă starea obiectelor și relațiile dintre acestea în domeniul în cauză.

Structura logică a datelor stocate în baza de date se numește model de prezentare a datelor. Principalele modele de prezentare a datelor (modele de date) includ ierarhice, de rețea, relaționale.

Un sistem de gestionare a bazelor de date (SGBD) este un complex de limbaje și instrumente software concepute pentru crearea, întreținerea și partajarea bazelor de date de către mulți utilizatori. De obicei, un SGBD se distinge prin modelul de date utilizat. Deci, SGBD bazat pe utilizarea unui model de date relațional se numește SGBD relațional.

Pentru a lucra cu o bază de date, instrumentele SGBD sunt deseori suficiente. Cu toate acestea, dacă este necesar să se asigure comoditatea de a lucra cu baza de date pentru utilizatorii necalificați sau dacă interfața SGBD nu se potrivește utilizatorilor, atunci pot fi dezvoltate aplicații. Crearea lor necesită programare. O aplicație este un program sau un set de programe care automatizează soluția oricărei probleme aplicate. Aplicațiile pot fi create în mediu sau în afara mediului SGBD - utilizând un sistem de programare care utilizează instrumente de acces la baze de date, de exemplu, Delphi sau C ++ Build. Aplicațiile dezvoltate într-un mediu SGBD sunt adesea denumite aplicații SGBD, iar aplicațiile dezvoltate în afara SGBD sunt adesea denumite aplicații externe.

Dicționarul de date este un subsistem de baze de date conceput pentru stocarea centralizată a informațiilor despre structurile de date, relațiile dintre fișierele bazei de date între ele, tipurile de date și formatele prezentării acestora, datele aparținând utilizatorilor, codurile de securitate și controlul accesului etc.

Sistemele de informații bazate pe utilizarea bazelor de date funcționează de obicei într-o arhitectură client-server. În acest caz, baza de date este găzduită pe un computer server și partajată.

Un server al unei anumite resurse dintr-o rețea de calculatoare este un computer (program) care gestionează această resursă, un client este un computer (program) care folosește această resursă. Ca resursă a unei rețele de calculatoare, de exemplu, pot acționa baze de date, fișiere, servicii de tipărire și servicii poștale.

Avantajul organizării unui sistem informațional pe arhitectura client-server este o combinație reușită de stocare centralizată, întreținere și acces colectiv la informații corporative generale cu munca individuală a utilizatorului.

Conform principiului de bază al arhitecturii client-server, datele sunt procesate numai pe server. Un utilizator sau o aplicație generează interogări care ajung la serverul bazei de date sub formă de instrucțiuni SQL. Serverul bazei de date oferă căutarea și recuperarea datelor necesare, care sunt apoi transferate pe computerul utilizatorului. Avantajul acestei abordări în comparație cu cele anterioare este o cantitate considerabil mai mică de date transmise.

Se disting următoarele tipuri de SGBD:

* SGBD cu funcții complete;

* servere de baze de date;

* instrumente pentru dezvoltarea de programe de lucru cu o bază de date.

SGBD-urile complete sunt SGBD tradiționale. Acestea includ dBase IV, Microsoft Access, Microsoft FoxPro și multe altele.

Serverele de baze de date sunt destinate organizării centrelor de procesare a datelor în rețelele de calculatoare. Serverele de baze de date furnizează procesarea solicitărilor de programe client, de obicei folosind instrucțiuni SQL. Exemple de servere de baze de date sunt: \u200b\u200bMicrosoftSQL Server, Inter Base etc.

În general, rolul programelor client poate fi SGBD, foi de calcul, procesoare de text, programe de e-mail etc.

Instrumentele pentru dezvoltarea programelor de lucru cu o bază de date pot fi utilizate pentru a crea următoarele programe:

* programe client;

* servere de baze de date și componentele lor individuale;

* aplicații personalizate.

Prin natura utilizării lor, SGBD-urile sunt împărțite în multi-utilizator (industrial) și local (personal).

Industrial, SGBD reprezintă o bază software pentru dezvoltarea sistemelor de control automatizate pentru obiecte economice mari. SGBD industrial trebuie să îndeplinească următoarele cerințe:

* capacitatea de a organiza munca paralelă comună a multor utilizatori;

* scalabilitate;

* portabilitate pe diverse platforme hardware și software;

* stabilitate în raport cu eșecurile de diferite tipuri, inclusiv prezența unui sistem de backup pe mai multe niveluri al informațiilor stocate;

* asigurarea securității datelor stocate și a unui sistem avansat structurat de acces la acestea.

SGBD personal este un software destinat soluționării problemelor unui utilizator local sau al unui grup mic de utilizatori și destinat utilizării pe un computer personal. Acest lucru explică al doilea nume - desktop. Caracteristicile definitorii ale sistemelor desktop sunt:

* ușurința relativă de utilizare, permițându-vă să creați aplicații de utilizare viabile pe baza lor;

* cerințe relativ limitate de resurse hardware.

Conform modelului de date utilizat, SGBD-urile sunt împărțite în ierarhizare, rețea, relațională, orientată obiect etc. Unele SGBD pot suporta simultan mai multe modele de date.

Următoarele tipuri de limbi sunt utilizate pentru a lucra cu datele stocate în baza de date:

* limbajul descrierii datelor - un limbaj non-procedural la nivel înalt
tip declarativ, conceput pentru a descrie o logică
structuri de date

* limbaj de manipulare a datelor - un set de construcții care oferă operațiuni de bază pentru lucrul cu date: introducerea, modificarea și recuperarea datelor la cerere.

Limbile denumite pot diferi în diferite SGBD. Cele mai răspândite sunt două limbaje standardizate: QBE - un limbaj de interogare bazat pe model și SQL - un limbaj de interogare structurat. QBE are în principal proprietățile unui limbaj de manipulare a datelor, SQL combină proprietățile ambelor tipuri de limbaje.

SGBD implementează următoarele funcții de bază la nivel scăzut:

* gestionarea datelor în memoria externă;

* gestionarea bufferelor RAM;

* gestionarea tranzacțiilor;

* păstrarea unui jurnal al modificărilor în baza de date;

* asigurarea integrității și securității bazei de date.

Implementarea funcției de gestionare a datelor în memoria externă asigură organizarea gestionării resurselor în sistemul de fișiere OS.

Necesitatea memorării tampon a datelor se datorează faptului că cantitatea de memorie RAM este mai mică decât cantitatea de memorie externă. Tampoanele sunt zone de RAM concepute pentru a accelera schimbul între RAM extern și RAM. Tampoanele memorează temporar fragmente ale bazei de date, datele din care se presupune că vor fi utilizate la accesarea SGBD sau sunt planificate să fie scrise în baza de date după procesare.

Mecanismul de tranzacție este utilizat în SGBD pentru a menține integritatea datelor din baza de date. O tranzacție este o anumită secvență de operații indivizibilă pe datele bazei de date, care este urmărită de SGBD de la început până la sfârșit. Dacă din orice motiv (defecțiuni și eșecuri hardware, erori în software, inclusiv aplicația), tranzacția rămâne incompletă, atunci este anulată.

Există trei proprietăți principale inerente tranzacțiilor:

* atomicitate (toate operațiunile incluse în tranzacție sunt executate sau niciuna);

* serializabilitate (nu există influență reciprocă a tranzacțiilor executate în același timp);

* durabilitate (chiar și o defecțiune a sistemului nu duce la pierderea rezultatelor unei tranzacții angajate).

Un exemplu de tranzacție este operațiunea de transfer de bani dintr-un cont în altul din sistemul bancar. În primul rând, banii sunt retrași dintr-un cont, apoi sunt creditați într-un alt cont. Dacă cel puțin una dintre acțiuni nu are succes, rezultatul operației va fi incorect și echilibrul operației va fi supărat.

Înregistrarea modificărilor este efectuată de SGBD pentru a asigura fiabilitatea stocării datelor în baza de date în prezența defecțiunilor hardware și software.

Asigurarea integrității bazei de date este o condiție necesară pentru funcționarea cu succes a bazei de date, mai ales atunci când este utilizată într-o rețea. Integritatea bazei de date este o proprietate a bazei de date, ceea ce înseamnă că aceasta conține informații complete, consistente, care reflectă în mod adecvat subiectul. Starea integrală a bazei de date este descrisă utilizând constrângeri de integritate sub formă de condiții care trebuie îndeplinite de datele stocate în baza de date.

Securitatea se realizează în SGBD prin criptarea datelor, protecția prin parolă, suportul nivelurilor de acces la baza de date și elementele sale individuale (tabele, formulare, rapoarte etc.).

3. Modele de organizare a datelor

Într-un model ierarhic, obiectele entității și relațiile de domeniu sunt reprezentate de seturi de date care au o structură arborescentă (ierarhică). Modelul ierarhic de date a fost istoric primul. Pe baza sa, la sfârșitul anilor 60 - începutul anilor 70, au fost dezvoltate primele SGBD profesionale.

Obiectivul constrângerilor de integritate în modelul ierarhic este pus pe integritatea referințelor dintre strămoși și descendenți, sub rezerva regulii de bază: nici un descendent nu poate exista fără un părinte.

Modelul de date de rețea vă permite să afișați diverse relații de elemente de date sub forma unui grafic arbitrar. O bază de date de rețea constă dintr-un set de înregistrări și un set de legături conexe. Nu există restricții speciale privind formarea unei conexiuni. Dacă în structurile ierarhice o înregistrare copil ar putea avea o singură înregistrare strămoș, atunci în modelul de date de rețea o înregistrare copil poate avea un număr arbitrar de înregistrări strămoși.

Avantajul secțiunii medii de date a rețelei este posibilitatea implementării sale eficiente. În comparație cu modelul ierarhic, modelul rețelei oferă oportunități mai mari în sensul admisibilității formării conexiunilor arbitrare.

Dezavantajul modelului de date de rețea este complexitatea ridicată și rigiditatea schemei bazei de date construite pe baza sa, precum și complexitatea înțelegerii sale de către un utilizator obișnuit. În plus, în modelul de date de rețea, controlul integrității legăturilor este slăbit datorită admisibilității stabilirii legăturilor arbitrare între înregistrări.

Sistemele bazate pe modelul de rețea nu sunt utilizate pe scară largă în practică.

Modelul de date relaționale a fost propus de angajatul IBM Edgar Codd și se bazează pe conceptul de relație.

O relație este un set de elemente numite tupluri. Un tabel bidimensional este o formă vizuală de reprezentare a unei relații.

Folosind un singur tabel, este convenabil să descriem cel mai simplu tip de relații între date, și anume: împărțirea unui obiect, informații despre care sunt stocate în tabel, în mai multe subiecte, fiecare dintre ele corespunzând unui rând sau înregistrare de tabel.

Principalele dezavantaje ale modelului relațional sunt următoarele: lipsa mijloacelor standard de identificare a înregistrărilor individuale și complexitatea descrierii relațiilor ierarhice și de rețea.

4. Baze de date relaționale

Modelul de date relaționale (RDM) al unei anumite zone subiect este un set de relații care se schimbă în timp. Când creați un sistem de informații, un set de relații vă permite să stocați date despre obiecte în zona subiectului și să simulați conexiunile dintre ele. Termenii RMD sunt prezentați în tabel. 4.1

Tabelul 4.1. Termenii modelului relațional

Îmbrăcat termic-relațional

Echivalent

Atitudine

Diagrama relației

Rânduri antet coloană tabel (antet tabel)

Rândul tabelului, înregistrare

Esenta

Descrierea proprietăților obiectului

Coloană, câmp

Multe valori valabile

atribut

Cheia principala

Identificator unic

Cardinalitatea

Numărul de linii

Numar de coloane

O bază de date relațională este un depozit de date care conține un set de tabele bidimensionale. Datele din tabele trebuie să respecte următoarele principii:

1. Valorile atributelor trebuie să fie atomice (cu alte cuvinte,
fiecare valoare conținută la intersecția unui rând și a unei coloane,
nu trebuie împărțit în mai multe valori).

2. Valorile fiecărui atribut trebuie să fie de același tip.

3. Fiecare înregistrare din tabel este unică.

4. Fiecare câmp are un nume unic.

5. Secvența câmpurilor și înregistrărilor din tabel nu este esențială.

Raportul este cel mai important concept și este un tabel bidimensional care conține unele date.

O entitate este un obiect de orice natură, datele despre care sunt stocate într-o bază de date. Datele entității sunt stocate într-o relație.

Atributele sunt proprietăți care caracterizează o entitate. În structura tabelului, fiecare atribut este denumit și corespunde titlului unei anumite coloane din tabel.

Cheia unei relații este un set de atribute care identifică în mod unic fiecare dintre tuplurile relației. Cu alte cuvinte, setul de atribute K, care este cheia relației, are proprietatea unicității. Următoarea proprietate a unei chei nu este redundanță. Adică, niciunul dintre subseturile proprii ale mulțimii K nu posedă proprietatea unicității.

Fiecare relație are întotdeauna o combinație de atribute care pot servi drept cheie.

Pot exista cazuri în care o relație are mai multe combinații de atribute, fiecare dintre acestea identificând în mod unic toate tuplurile relației. Toate aceste combinații de atribute sunt posibile chei de relație. Oricare dintre tastele posibile poate fi selectată ca primară.

Cheile sunt utilizate în mod obișnuit în următoarele scopuri:

Eliminarea valorilor duplicate în atributele cheie (alte atribute nu sunt luate în considerare);

Comenzi de tupluri. Este posibil să ordonați în ordine crescătoare sau descrescătoare valorile tuturor atributelor cheie, precum și ordonarea mixtă (cu una - crescătoare, iar cu cealaltă - descrescătoare);

Organizații de legare a tabelelor.

Conceptul de cheie străină este important. O cheie străină poate fi definită ca un set de atribute ale unei relații R2, ale cărei valori trebuie să coincidă cu valorile unei chei posibile a unei alte relații R1.

Atributele relației K2 care alcătuiesc cheia străină nu sunt cheie pentru această relație.

Legăturile dintre relații sunt stabilite folosind chei străine.

Proiectarea bazelor de date ale sistemelor informatice este o sarcină destul de laborioasă. Se realizează pe baza formalizării structurii și proceselor domeniului, informațiile despre care se presupune că vor fi stocate în baza de date. Distingeți între proiectare conceptuală și schematic-structurală.

Proiectarea conceptuală a unui DB IS este în mare parte un proces euristic. Adecvarea modelului infologic al subiectului construit în cadrul acestuia este verificată empiric, în procesul de funcționare a SI.

Etape conceptuale de proiectare:

* studiul domeniului pentru a forma o idee generală a acestuia;

* selectarea și analiza funcțiilor și sarcinilor IS dezvoltate;

* definirea principalelor obiecte-entități din aria subiectului
și relația dintre ei;

* prezentarea oficializată a domeniului.

La proiectarea unei scheme de baze de date relaționale, se pot distinge următoarele proceduri:

* determinarea listei de tabele și a legăturilor dintre acestea;

* determinarea listei de câmpuri, tipuri de câmpuri, câmpuri cheie ale fiecărei tabele (schema tabelelor), stabilirea legăturilor între tabele prin chei străine;

* stabilirea indexării pentru câmpurile din tabele;

* dezvoltarea listelor (dicționarelor) pentru câmpuri cu enumerare
date;

* setarea constrângerilor de integritate pentru tabele și linkuri;

* normalizarea tabelelor, corectarea listei de tabele și linkuri. Proiectarea bazei de date se realizează la nivel fizic și logic. Proiectarea la nivel fizic se realizează prin intermediul unui SGBD și este adesea automatizată.

Proiectarea logică constă în determinarea numărului și structurii tabelelor, dezvoltarea interogărilor către baza de date, raportarea documentelor, crearea formularelor pentru introducerea și editarea datelor în baza de date etc.

Una dintre cele mai importante sarcini ale proiectării logice a bazelor de date este structurarea datelor. Se disting următoarele abordări ale proiectării structurilor de date:

* combinarea informațiilor despre obiectele entității într-un singur tabel (o relație) cu descompunerea ulterioară în mai multe tabele interconectate pe baza normalizării relațiilor;

* formularea de cunoștințe despre sistem (determinarea tipurilor de date și relații inițiale) și cerințe pentru prelucrarea datelor, folosind sistemul CA5E pentru a obține o schemă de baze de date finalizată sau chiar un sistem de informații aplicat finalizat;

* implementarea analizei sistemului și dezvoltarea modelelor structurale.

5. Scopul și principiul operațiunii SQL

SQL (adesea pronunțat „continuare”, scurt pentru Structured Query Language) înseamnă Structured Query Language.

SQL este un instrument conceput pentru procesarea și citirea datelor conținute într-o bază de date computerizată. Este un limbaj care face posibilă crearea și lucrul eficient cu baze de date relaționale.

Lumea bazelor de date devine din ce în ce mai unificată, ceea ce a dus la necesitatea unui limbaj standard care poate funcționa în multe tipuri diferite de medii de calcul. Limbajul standard va permite utilizatorilor care cunosc un set de comenzi să le folosească pentru a crea, căuta, modifica și transmite informații indiferent dacă rulează pe un computer personal, stație de lucru în rețea sau mainframe. Într-o lume din ce în ce mai interconectată, un utilizator echipat cu un astfel de limbaj are un avantaj imens în utilizarea și sintetizarea informațiilor dintr-o varietate de surse într-o varietate de moduri.

După cum sugerează și numele, SQL este un limbaj de programare care este utilizat pentru a organiza interacțiunea utilizatorului cu o bază de date. De fapt, SQL funcționează numai cu baze de date relaționale.

6. Modelul infologic

La crearea unui model infologic, a fost analizată aria tematică a bazei de date date „Curricula disciplinelor studiate ale direcției PMI”. Au fost selectate 4 obiecte: Curriculum, Disciplină, Student, Profesor, precum și două tabele suplimentare care leagă studenți și discipline, precum și între profesori și discipline. Obiectul Curriculum are atributele: Anul de creație, Numărul curriculumului. Obiectul Disciplina are următoarele atribute: Numele disciplinei, Codul disciplinei, Numărul curriculumului, Numărul de ore de cursuri, Numărul de ore de practică, Numărul de ore pentru munca de laborator, Total ore, Numărul de ore pe săptămână, Formular de raportare a disciplinei, Semestrul de studiu. Obiectul Sudent are următoarele atribute: numărul cărții de note, numele complet. Iar obiectul Profesor are atributele: numele, numărul personalului, departamentul, funcția, telefonul. Obiectele Curriculum și Disciplină sunt legate într-o relație 1: n, obiectele Disciplină și Student sunt legate într-o relație 1: n, iar obiectele Disciplină și Profesor sunt legate într-o relație 1: n.

Diagramele ER au fost utilizate pentru a descrie modelul infologic:

Imaginea 1

7. Model logic

Modelul logic descrie conceptele de subiect, relația lor, precum și restricțiile asupra datelor impuse de subiect.

Modelul de date logice este prototipul inițial pentru baza de date viitoare. Este construit în termeni de unități de informații, dar fără referire la un SGBD specific. Mai mult, modelul de date logice nu trebuie să fie exprimat în termenii modelului de date relațional.

Pentru a crea un model logic, fiecărui obiect i s-a atribuit un tabel cu un set specific de câmpuri. Deoarece Disciplina obiectelor și Profesorul sunt legate într-o relație 1: n, apare un tabel suplimentar care reprezintă relația dintre obiectele Disciplină și Profesor: Învăță.

În total, avem 4 obiecte și, prin urmare, vor exista 4 tabele pentru prezentarea lor, obiectul Curriculum este doar informativ, deoarece activitatea bazei de date se desfășoară cu un singur curriculum:

Dar există o relație 1: n între cele două obiecte, deci trebuie să introducem un alt tabel pentru a reprezenta relațiile dintre aceste tabele. Acesta este tabelul Disciplina-Prepodavatel și tabelul Disciplina-Student.

Baza de date prezentată poate fi atribuită celei de-a cincea forme normale, deoarece este 3 formă normală și cheia primară este simplă. Diagrama logică este implementată în Microsoft Access.

Figura 2

8. Structura tabelelor

Baza de date originală este formată din 5 tabele (nu contăm tabelul Curriculum, deoarece este utilizat un singur curriculum).

Decodarea câmpurilor:

vDisciplina.db

Ш Nazv- numele disciplinei, tipul câmpului: Șir;

Ш Kod - cod unic de disciplină: LongInt;

Ш Semestr - semestrul în care este predat: String;

Ш KolLeKCh - numărul de prelegeri la această disciplină: LongInt;

Ш KolPraktCh - numărul de practici din această disciplină: LongInt;

Ш KolLabRabCh - numărul de prelegeri la această disciplină: LongInt;

Ш VsegoCh - numărul total de ore: LongInt;

Ш NomerYP - numărul curriculumului, care conține disciplina: LongInt.

vStudent.db

Ш NomerStudBileta - numărul de identificare al studentului: LongInt;

Ш FIO - prenume student: ShortInt;

vPrepodaet.db (Disciplina-Prepodavatel)

Ш TabNomerPrepod - numărul de personal al profesorului care predă disciplina corespunzătoare: LongInt;

Ш FIO- numele profesorului care predă disciplina relevantă: String.

vPrepod.db

Ш FIO - Numele complet al profesorului: String;

Ш TabelNomerPrepodavatelya - numărul unic de personal al profesorului: LongInt;

Ш Kafedra - departamentul în care lucrează: String;

Ш Dolshnost - Poziția profesorului: Șir;

Ш Telefon - telefonul de contact al profesorului: Șir.

v Izuchaet.db (Disciplina- Student)

Ш KodDiscip- cod disciplina: LongInt;

Ш NomerStudBileta - numărul de identificare al studentului care studiază disciplina: LongInt;

Ш FIO- numele complet al studentului care studiază disciplina relevantă: String;

Ш Ocenka - evaluarea elevului la disciplina studiată: LongInt;

9. Proiectarea interogărilor SQL

1. Formați o listă de credite și examene pentru fiecare semestru.

selectați Nazv, FormaOtchet

unde Semestr \u003d: s și

(Disciplina.FormaOtchet \u003d "Pass" sau Disciplina.FormaOtchet \u003d "Exam");

2. Pentru a forma fișele de examinare și test / principal și suplimentar / pentru fiecare subiect.

Foaia principală:

selectați Prepodaet.FIO,

Disciplina.ObsheeKolChVNed, Disciplina.Semestr, Izuchaet.FIO, Izuchaet.

Ocenka, Disciplina.Nazv

din Disciplina, Prepodaet, Izuchaet

unde Disciplina.KodDiscip \u003d Prepodaet.KodDiscip

și (Disciplina.FormaOtchet \u003d "Exam" sau Disciplina.FormaOtchet \u003d "Pass")

Declarație suplimentară (pentru studenții cu 2):

selectați Disciplina.Nazv, Prepodaet.FIO,

Disciplina.ObsheeKolChVNed, Izuchaet.FIO, Disciplina.Semestr, Izuchaet.Ocenka

din Izuchaet, Disciplina, Prepodaet

unde Izuchaet.Ocenka \u003d "2"

și Disciplina.KodDiscip \u003d Izuchaet.KodDiscip

și Disciplina.KodDiscip \u003d Prepodaet.KodDiscip

și (Disciplina.FormaOtchet \u003d "Exam" sau Disciplina.FormaOtchet \u003d "Pass");

Actualizați disciplina

set ObsheeKolChVNed \u003d VsegoCh / 17;

4. Pregătiți o inserție pentru diploma fiecărui student:

selectați Disciplina.Nazv, Izuchaet.Ocenka, Izuchaet.FIO

din Izuchaet, Disciplina

unde Disciplina.KodDiscip \u003d Izuchaet.KodDiscip

și Disciplina.FormaOtchet \u003d "Examen"

Selectați AVG (Ocenka) ca SrBall

Comandă de SrBall desc;

5. Enumerați grupul în ordinea descrescătoare a scorului mediu:

Selectați FIO, AVG (Ocenka) ca SrBall

Comandă de SrBall desc;

10. Structura și funcțiile sistemului

Munca cursului constă dintr-un proiect „Project1” și 13 module.

1. Unitatea 1 - formularul este stocat aici, care este pagina de titlu. Componente utilizate: Memo, Buton.

2. Unitatea 2 - formularul este stocat aici, care este pagina inițială a bazei de date. Componentele sunt folosite aici: Buton, Memo.

3. Unitatea 3 - formularul este stocat aici, care conține toate tabelele bazei de date sub formă de file. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

4. Unitatea 4 - formularul pe care este afișată sarcina este stocat aici. Componentele sunt folosite aici: Memo, Buton.

5. Unitatea 5 - aici este stocat un formular, care afișează o foaie de examinare suplimentară. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

6. Unitatea 6 - aici este stocat un formular, care afișează o listă de examene și teste. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Interogare.

7. Unitatea 7 - formularul care afișează foaia principală de examen este stocat aici. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

8. Unitatea 8 - formularul este stocat aici, care afișează lista grupului în ordine descrescătoare. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

9. Unitatea 9 - aici este stocat formularul, care afișează inserția în diplomă. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

10. Unitatea 10 - aici este stocat un formular, care afișează un formular pentru completarea unei declarații electronice. Componentele sunt folosite aici: Memo, Buton, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

11. Unitatea11 - formularul pe care este afișat meniul este stocat aici. Componentele sunt folosite aici: Memo, Buton, Etichetă.

12. Unitatea 12 - aici este stocat un formular, care afișează un raport privind crearea unei foi de examinare electronice. Componentele utilizate aici sunt Memo și Button, RVProject, RVQueryConnnection și Query.

13. Unitatea13 - aici este stocat un formular, care afișează un raport privind crearea unui insert într-o diplomă. Componentele utilizate aici sunt Memo și Button, RVProject, RVQueryConnnection și Query.

11. Manual de utilizare

1. Lansați proiectul. În fața noastră apare pagina de titlu a lucrării cursului

Figura 3

Aici putem intra imediat în baza de date sau putem privi sarcina și reveni la acest formular. Selectăm „Afișează sarcina”

2. În fața noastră apare o fereastră cu informații despre atribuirea termenului de hârtie

Figura 4

3. Întoarceți-vă făcând clic pe butonul corespunzător și începeți lucrul făcând clic pe butonul ferestrei anterioare „Continuați”

Figura 5

4. După examinarea informațiilor de pe această pagină, faceți clic pe butonul „Autentificare”

Figura 6

În fața noastră apare o fereastră care conține pe file toate informațiile conținute în baza de date. Aici putem vizualiza lista disciplinelor, grupul de studiu, profesorii, ce studiază studenții și ce materie sunt predate de profesori.

5. Tot din această fereastră putem accesa interogări. Faceți clic pe butonul corespunzător.

Figura 7

Aici putem selecta orice cerere de interes făcând clic pe butonul corespunzător. Tot aici putem reveni la tabele și putem continua la formarea versiunii electronice a foii de examinare.

6. Faceți clic pe butonul „Vizualizați lista creditelor și examenelor pentru fiecare semestru”

Figura 8

Aici trebuie să introduceți numărul semestrului și să faceți clic pe butonul de mai jos, apoi o listă de examene și teste pentru semestrul pe care l-ați introdus va apărea în fereastra tabelului. Din această foaie, putem reveni la interogări.

7. Faceți clic pe butonul „Mergeți la foaia principală de examinare”

Aici trebuie să selectați numele disciplinei din lista derulantă, apoi introduceți acest nume în caseta de sub lista derulantă și faceți clic pe butonul „Executare”. Solicitarea va afișa numărul total de ore pe săptămână pentru studierea disciplinei pe care ați introdus-o, precum și o listă a studenților care studiază această disciplină și nota lor pentru această disciplină. Atenţie! Câmpul de notă este completat pe formularul cu tabele din fila Disciplină elev. De asemenea, pe această foaie, puteți crea o foaie de examinare suplimentară. Pentru elevii cu nota 2. Din această fișă putem reveni la întrebări.

Figura 9

8. Faceți clic pe butonul „Mergeți la foaia de examinare suplimentară”

Figura 10

Aici putem vedea elevi care au nota 2 într-o anumită disciplină. Din această foaie, putem reveni la interogări.

9. Faceți clic pe butonul „Creați un insert pentru diplomă”

Figura 11

Aici trebuie să introduceți numele absolventului selectând studentul corespunzător din lista derulantă. Apoi apăsați tasta. Și apoi, la cerere, coloana „Disciplina” va fi completată cu o listă a disciplinelor studiate timp de 5 ani de studiu și vor apărea notele corespunzătoare. Pe aceeași foaie, puteți vizualiza versiunea electronică a inserției făcând clic pe butonul „Versiune tipărită”. După vizualizarea acestei versiuni, trebuie doar să închideți fereastra care se deschide cu o cruce roșie în colțul din dreapta sus al ecranului.

Figura 12

10. Faceți clic pe butonul „Vizualizați lista grupurilor în ordinea descrescătoare a scorului mediu”

Figura 13

Aici vedem lista grupului și nota medie corespunzătoare fiecărui elev, aranjate în ordine descrescătoare. Din această foaie, putem reveni la interogări.

Figura 14

Selectați disciplina care ne interesează din lista derulantă, de exemplu, economie și introduceți numele acesteia în caseta de sub lista derulantă. Apoi apăsați butonul Executare și vedeți numele profesorului acestei discipline.

Figura 16

Aici vedem numele disciplinei pe care am ales-o, numele complet al profesorului acestei discipline. Și, de asemenea, lista studenților care au studiat această disciplină. Pentru a ieși din raport, trebuie doar să faceți clic pe cruce în colțul din dreapta sus al ecranului. Revenim la foaia anterioară. Din această foaie, putem reveni la interogări.

12. Crearea tabelelor

Pentru a crea tabele, au fost utilizate utilitarele Desktop Database. O puteți rula - Start / Programe / Borland Delphi 7 / Desktop Desktop. Directorul de lucru al utilitarului trebuie configurat. Selectați comanda Fișier / Director de lucru și setați directorul de lucru. Pentru a crea un tabel, selectați comanda Fișier / Nou / Tabel. Apoi, trebuie să selectați tipul de masă. Tipul PARADOX 7 poate fi considerat cel mai bun pentru tabelele de server de fișiere.

1. Creați tabelul YchebPlan (curriculum):

Figura 17

5. Crearea tablei Disciplina (Disciplina):

Figura 18

6. Crearea tabelului Student:

Figura 19

7. Crearea unui tabel Prepodaet (Discipline-Teacher):

Figura 20

5. Crearea unui tabel Prepod (profesor):

Figura 21

8. Crearea tabelului Izuchaet (Disciplina-Student):

Figura 22

13. Crearea unei aplicații în Delphi

Pentru a crea o aplicație nouă, selectați elementul Nou / Aplicație din meniul Fișier. Apare formularul și modulul (în general, acesta se numește proiect), acum puteți plasa componentele necesare pe formular. Dacă este necesar, puteți crea un alt formular (și mai multe), pentru aceasta trebuie să selectați elementul New / Form din meniul Fișier.

1. Tabel. Completarea cu date. Afișarea datelor.

Pentru a afișa un tabel pe un formular, trebuie să plasați componente pe acesta:

· Tabel (în fila BDE) - În inspectorul de obiecte, în fila „Parametri”, în proprietatea Tablename, selectați tabelul dorit.

Figura 23

· DBGrid (în fila DataControls) - este necesar pentru a afișa tabelul pe formular, în Inspectorul de obiecte, în proprietatea DataSource, specificați sursa de date necesară.

Figura 24

· DBNavigator (în fila DataControls) - necesar pentru a naviga prin înregistrările tabelului. În inspectorul de obiecte, proprietatea DataSource specifică aceeași sursă de date ca în DBGrid. Funcțiile navigatorului sunt disponibile făcând clic pe butoanele acestuia în timp ce aplicația rulează. Componenta conține 10 butoane.

Figura 25

· DataSource (fila Access Data) - o componentă de nivel intermediar pentru accesul la date. Servește ca intermediar între tabelele SGBD și comenzile de pe ecran (DBGrid, DBNavigator).

Figura 26

14. Crearea unui câmp cu informații (Memo) și butoane

Componenta Memo este plasată pe formular, care se află în fila Standard.

Figura 27

În inspectorul de obiecte din fila „Parametri”, în proprietatea Lines, introduceți textul necesar pentru afișare

Figura 28

Crearea butoanelor.

Pentru a închide corect formularul, este plasată componenta Buton, care se află în fila Standard.

Figura 29

Pentru ca butonul să funcționeze, trebuie să specificați în gestionarul de evenimente OnClick:

procedura TForm1.N5Click (Expeditor: TObject);

începe

Forma 2. Afișare;

Forma 1. Închide;

sfârșit;

15. Crearea semnăturilor pentru tabele

Pentru a semna tabelul în cadrul cursului, a fost utilizată componenta Lable, aflată în fila Standard. În Inspectorul de obiecte, în proprietatea Caption, trebuie doar să scrieți textul.

Figura 30

16. Creați o listă derulantă

Pentru a selecta o comandă din lista disponibilă, utilizați componenta ComboBox (listă derulantă). Poate fi completat în acest fel

În Inspectorul de obiecte, în proprietatea Elemente, trebuie să scrieți:

Figura 31

16. Generarea rapoartelor

Raportul este creat folosind instrumentul QReports, care trebuie conectat de la început: Component-\u003e instalați pachete-\u003e adăugați deschideți folderul bin selectați fișierul dclqrt70.bpl faceți clic pe OK și apoi va apărea o filă cu componente QReport. Componente pe care le folosesc:

masa 2

17. Listarea programelor

descrierea proiectului

programul Project1;

utilizări

Formulare,

Unit1 în „Unit1.pas” (Form1),

Unit2 în „Unit2.pas” (Form2),

Unit3 în „Unit3.pas” (Form3),

Unit4 în „Unit4.pas” (Form4),

Unit5 în „Unit5.pas” (Forma5),

Unit6 în „Unit6.pas” (Form6),

Unit7 în „Unit7.pas” (Form7),

Unit8 în „Unit8.pas” (Form8),

Unitatea 9 în „Unitatea9.pas” (Forma 9),

Unit10 în „Unit10.pas” (Form10),

Unit11 în „Unit11.pas” (Form11),

Unit12 în „Unit12.pas” (Form12),

Unitatea13 din „Unitatea13.pas” (Forma13),

Unit14 în „Unit14.pas” (Form14);

($ R * .res)

începe

Application.Initialize;

Application.CreateForm (TForm1, Form1);

Application.CreateForm (TForm2, Form2);

Application.CreateForm (TForm3, Form3);

Application.CreateForm (TForm4, Form4);

Application.CreateForm (TForm5, Form5);

Application.CreateForm (TForm6, Form6);

Application.CreateForm (TForm7, Form7);

Application.CreateForm (TForm8, Form8);

Application.CreateForm (TForm9, Form9);

Application.CreateForm (TForm10, Form10);

Application.CreateForm (TForm11, Form11);

Application.CreateForm (TForm12, Form12);

Application.CreateForm (TForm13, Form13);

Application.CreateForm (TForm14, Form14);

Aplicație.Run;

sfârșit.

Descrierea modulului Unit1

unitate Unit1;

interfață

utilizări

Dialoguri, StdCtrls;

tip

TForm1 \u003d clasă (TForm)

Memo1: TMemo;

Buton1: TButton;

Buton2: TButton;

Buton3: TButton;

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form1: TForm1;

implementare

utilizează Unit2, Unit4, Unit6, Unit7, Unit5, Unit8, Unit9, Unit10;

($ R * .dfm)

procedura TForm1.Button3Click (Expeditor: TObject);

începe

Form2.show;

sfârșit;

procedura TForm1.Button2Click (Expeditor: TObject);

începe

Forma 1. Închide;

sfârșit;

procedura TForm1.Button1Click (Expeditor: TObject);

începe

Form4.show;

sfârșit;

sfârșit.

Descrierea modulului Unit2

unitate Unit2;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, StdCtrls;

tip

TForm2 \u003d clasă (TForm)

Memo1: TMemo;

GroupBox1: TGroupBox;

Buton1: TButton;

Buton2: TButton;

procedura Button1Click (Sender: TObject);

procedura Button2Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form2: TForm2;

implementare

folosește Unitatea 3;

($ R * .dfm)

procedura TForm2.Button1Click (Expeditor: TObject);

începe

Form3.spect;

Form2.Închide;

sfârșit;

procedura TForm2.Button2Click (Expeditor: TObject);

începe

Form2.Închide;

sfârșit;

Descrierea modulului Unit3

unitate Unit3;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, ComCtrls, ExtCtrls, DBCtrls, Grile, DBGrids, DB, DBTables,

StdCtrls, QuickRpt, QRCtrls;

tip

TForm3 \u003d clasă (TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

TabSheet4: TTabSheet;

TabSheet5: TTabSheet;

TabSheet6: TTabSheet;

DataSource1: TDataSource;

DataSource2: TDataSource;

DataSource3: TDataSource;

DataSource4: TDataSource;

Tabelul 1: TTable;

Tabelul 2: TTable;

Tabelul 3: TTable;

Tabelul 4: TTable;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

DBGrid2: TDBGrid;

DBNavigator2: TDBNavigator;

DBGrid3: TDBGrid;

DBNavigator3: TDBNavigator;

DBGrid4: TDBGrid;

DBNavigator4: TDBNavigator;

DBGrid5: TDBGrid;

DBNavigator5: TDBNavigator;

DBGrid6: TDBGrid;

DBNavigator6: TDBNavigator;

Buton1: TButton;

DataSource5: TDataSource;

DataSource6: TDataSource;

Tabelul 5: TTable;

Tabelul 6: TTable;

Interogare1: TQuery;

Buton2: TButton;

Label1: TLabel;

Memo1: TMemo;

Label3: TLabel;

Buton3: TButton;

procedura Button1Click (Sender: TObject);

procedura Button2Click (Expeditor: TObject);

procedura Button3Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Forma3: TForm3;

implementare

utilizează Unit5, Unit11;

($ R * .dfm)

procedura TForm3.Button1Click (Expeditor: TObject);

începe

Forma 11.spectacol;

Form3.închide;

sfârșit;

procedura TForm3.Button2Click (Expeditor: TObject);

începe

Interogare1.ExecSQL;

Forma 3.Refresh;

sfârșit;

procedura TForm3.Button3Click (Expeditor: TObject);

începe

Form3.închide;

sfârșit;

Descrierea modulului Unit4

unitate Unit4;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, StdCtrls;

tip

TForm4 \u003d clasă (TForm)

Memo1: TMemo;

Buton1: TButton;

procedura Button1Click (Sender: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form4: TForm4;

implementare

utilizează Unitatea1;

($ R * .dfm)

procedura TForm4.Button1Click (Expeditor: TObject);

începe

Form1.show;

sfârșit;

Descrierea modulului Unității 5

unitate Unit5;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, DB, DBTables, Grids, DBGrids, StdCtrls, Mask, DBCtrls, ExtCtrls;

tip

TForm5 \u003d clasă (TForm)

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Interogare1: TQuery;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

DBNavigator1: TDBNavigator;

Buton1: TButton;

procedure ComboBox1Change (Expeditor: TObject);

procedura Edit1Change (Expeditor: TObject);

procedura Button1Click (Sender: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Forma 5: TForm5;

implementare

utilizează Unitatea11;

($ R * .dfm)

procedura TForm5.ComboBox1Change (Expeditor: TObject);

începe

Interogare1.Activ: \u003d adevărat;

sfârșit;

procedura TForm5.Edit1Change (Expeditor: TObject);

începe

Interogare 1. Deschis;

sfârșit;

procedura TForm5.Button1Click (Expeditor: TObject);

începe

Forma 11.spectacol;

Forma 5. Închide;

sfârșit;

Descrierea unității 6

unitate Unit6;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, DB, DBTables, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls;

tip

TForm6 \u003d clasă (TForm)

Buton1: TButton;

Edit1: TEdit;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Interogare1: TQuery;

Label1: TLabel;

DBNavigator1: TDBNavigator;

Label2: TLabel;

Memo1: TMemo;

Buton2: TButton;

Label3: TLabel;

procedura Button1Click (Sender: TObject);

procedura Button2Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form6: TForm6;

implementare

utilizează Unitatea11;

($ R * .dfm)

procedura TForm6.Button1Click (Expeditor: TObject);

începe

Interogare 1. Închideți;

dacă nu Interogare 1. Pregătit atunci

Interogare 1. Pregătiți;

dacă lungime (edit1.text)<>0 atunci

altceva

începe

Interogare1.Params.Value: \u003d 0;

sfârșit;

Interogare 1. Deschis;

sfârșit;

procedura TForm6.Button2Click (Expeditor: TObject);

începe

Forma 11.spectacol;

Forma 6. Închide;

sfârșit;

Descrierea modulului Unității 7

unitate Unit7;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, StdCtrls, Grile, DBGrids, DBTables, DB, Mask, DBCtrls, ExtCtrls,

QRCtrls, QuickRpt;

tip

TForm7 \u003d clasă (TForm)

Label1: TLabel;

Label2: TLabel;

DataSource1: TDataSource;

Interogare1: TQuery;

Edit2: TEdit;

Buton1: TButton;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

Label3: TLabel;

DBGrid1: TDBGrid;

Label4: TLabel;

Label5: TLabel;

DBNavigator1: TDBNavigator;

Buton2: TButton;

Label6: TLabel;

Label7: TLabel;

Memo1: TMemo;

ComboBox1: TComboBox;

Label8: TLabel;

Buton3: TButton;

procedura Button1Click (Sender: TObject);

procedura Button2Click (Expeditor: TObject);

procedura Button3Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form7: TForm7;

implementare

utilizează Unit5, Unit11;

($ R * .dfm)

procedura TForm7.Button1Click (Expeditor: TObject);

începe

Interogare 1. Închideți;

dacă nu Interogare 1. Pregătit atunci

Interogare 1. Pregătiți;

dacă lungime (edit2.text)<>0 atunci

Query1.Params.Value: \u003d edit2.Text

altceva

începe

Interogare1.Params.Value: \u003d 0;

edit2.Text: \u003d "Vă rugăm să introduceți un titlu!";

sfârșit;

Interogare 1. Deschis;

sfârșit;

procedura TForm7.Button2Click (Expeditor: TObject);

începe

Form5.spectacol;

Form7.închide;

sfârșit;

procedura TForm7.Button3Click (Expeditor: TObject);

începe

Forma 11.spectacol;

Form7.închide;

sfârșit;

Descrierea modulului Unității 8

unitate Unit8;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

tip

TForm8 \u003d clasă (TForm)

Label4: TLabel;

DataSource1: TDataSource;

Interogare1: TQuery;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

Buton1: TButton;

Memo1: TMemo;

procedura Button1Click (Sender: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form8: TForm8;

implementare

utilizează Unitatea11;

($ R * .dfm)

procedura TForm8.Button1Click (Expeditor: TObject);

începe

Forma 11.spectacol;

Form8.închidere;

sfârșit;

Descrierea modulului Unității 9

unitatea Unitatea9;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, Grile, DBGrids, DB, DBTables, StdCtrls, Mask, DBCtrls, ExtCtrls;

tip

TForm9 \u003d clasă (TForm)

Edit1: TEdit;

Interogare1: TQuery;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Buton1: TButton;

Interogare2: TQuery;

DataSource2: TDataSource;

Buton2: TButton;

DBEdit1: TDBEdit;

DBNavigator1: TDBNavigator;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Nume: TComboBox;

Buton3: TButton;

Memo1: TMemo;

Label4: TLabel;

Buton4: TButton;

procedura Button1Click (Sender: TObject);

procedura Button2Click (Expeditor: TObject);

procedura Button3Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Forma 9: TForm9;

implementare

utilizează Unit11, Unit13;

($ R * .dfm)

procedura TForm9.Button1Click (Expeditor: TObject);

începe

Interogare 1. Închideți;

dacă nu Interogare 1. Pregătit atunci

Interogare 1. Pregătiți;

dacă lungime (edit1.text)<>0 atunci

Query1.Params.Value: \u003d edit1.Text

altceva

începe

Interogare1.Params.Value: \u003d 0;

edit1.Text: \u003d "Vă rugăm să introduceți numele absolvenților!";

sfârșit;

Interogare 1. Deschis;

sfârșit;

procedura TForm9.Button2Click (Expeditor: TObject);

începe

Interogare2.Închide;

dacă nu Query2.Pregătit atunci

Interogare 2. Pregătiți-vă;

dacă lungime (edit1.text)<>0 atunci

Query2.Params.Value: \u003d edit1.Text

altceva

începe

Query2.Params.Value: \u003d 0;

edit1.Text: \u003d "Vă rugăm să introduceți numărul semestrului!";

sfârșit;

Interogare2.Deschis;

sfârșit;

procedura TForm9.Button3Click (Expeditor: TObject);

începe

Forma 11.spectacol;

Form 9. închide;

sfârșit;

procedura TForm9.Button4Click (Expeditor: TObject);

începe

Form13.QuickRep1.Preview;

sfârșit;

Descrierea modulului Unității 10

unitate Unit10;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, ExtCtrls, QuickRpt, StdCtrls, DB, DBTables, Mask, DBCtrls,

Grile, DBGrids;

tip

TForm10 \u003d clasă (TForm)

Buton1: TButton;

Interogare1: TQuery;

DataSource1: TDataSource;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

Buton2: TButton;

Label3: TLabel;

ComboBox1: TComboBox;

Label4: TLabel;

Label5: TLabel;

Memo1: TMemo;

Label6: TLabel;

Label7: TLabel;

Buton3: TButton;

procedura Button1Click (Sender: TObject);

procedura Button2Click (Expeditor: TObject);

procedura Button3Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form10: TForm10;

implementare

utilizează Unit3, Unit7, Unit12, Unit11;

($ R * .dfm)

procedura TForm10.Button1Click (Expeditor: TObject);

începe

Form12.QuickRep1.Preview;

sfârșit;

procedura TForm10.Button2Click (Expeditor: TObject);

începe

Interogare 1. Închideți;

dacă nu Interogare 1. Pregătit atunci

Interogare 1. Pregătiți;

dacă lungime (edit1.text)<>0 atunci

Query1.Params.Value: \u003d edit1.Text

altceva

începe

Interogare1.Params.Value: \u003d 0;

edit1.Text: \u003d "Vă rugăm să introduceți un titlu!";

sfârșit;

Interogare 1. Deschis;

sfârșit;

procedura TForm10.Button3Click (Expeditor: TObject);

începe

Forma 11.spectacol;

sfârșit;

Descrierea modulului Unității 11

unitate Unit11;

interfață

utilizări

Windows, mesaje, SysUtils, variante, clase, grafice, controale, formulare,

Dialoguri, StdCtrls;

tip

TForm11 \u003d clasă (TForm)

Buton1: TButton;

Buton2: TButton;

Buton3: TButton;

Buton4: TButton;

Buton 5: TButton;

Buton6: TButton;

Memo1: TMemo;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Buton7: \u200b\u200bTButton;

Label4: TLabel;

Label5: TLabel;

procedura Button2Click (Expeditor: TObject);

procedura Button1Click (Sender: TObject);

procedura Button4Click (Expeditor: TObject);

procedura Button3Click (Expeditor: TObject);

procedura Button5Click (Expeditor: TObject);

procedura Button6Click (Expeditor: TObject);

procedura Button7Click (Expeditor: TObject);

privat

(Declarații private)

public

(Declarații publice)

sfârșit;

var

Form11: TForm11;

implementare

Documente similare

    Crearea tabelelor și proiectarea sistemelor de gestionare a bazelor de date. Proiectare infologică. Schema bazei de date relaționale. Valoarea aplicată a sistemelor: un raport privind furnizorii și bunurile pe care aceștia le furnizează. Declarație privind disponibilitatea mărfurilor în magazin.

    termen de hârtie, adăugat 12/01/2008

    Dezvoltarea unei baze de date cu informații despre angajați, bunuri, cu o carte de referință a tipurilor de bunuri prin intermediul sistemului de gestionare a bazelor de date MySQL utilizând interogări SQL. Dezvoltarea unui model infologic al subiectului. Structura tabelelor, câmpurile bazei de date.

    test, adăugat 13.04.2012

    Procesul de proiectare a unei baze de date, dezvoltarea structurii sale logice în conformitate cu modelul infologic al domeniului subiect. Lucrul cu programul Access DBMS, proprietățile tabelelor și câmpurile acestora, crearea de legături între tabele; proiectare infologică.

    termen de hârtie, adăugat 17.12.2009

    Concepte de bază despre baze de date și sisteme de gestionare a bazelor de date. Tipuri de date cu care funcționează bazele de date Microsoft Access. Clasificarea SGBD și principalele caracteristici ale acestora. Baze de date post-relaționale. Tendințe în lumea sistemelor informatice moderne.

    hârtie de termen, adăugată 28.01.2014

    Caracteristicile dezvoltării unui model infologic și crearea unei structuri de baze de date relaționale. Bazele proiectării bazei de date. Dezvoltarea de tabele, formulare, interogări pentru afișarea informațiilor despre modelul corespunzător. Lucrul cu bazele de date și obiectele acestora.

    hârtie la termen, adăugată la 11/05/2011

    Investigarea caracteristicilor și funcționalității sistemului de gestionare a bazelor de date Microsoft Office Access. Definiția principalelor clase de obiecte. Dezvoltarea bazei de date „Birou de lucru”. Creați tabele, formulare, interogări, rapoarte și scheme de date.

    rezumat adăugat la 12/05/2014

    Tendința de dezvoltare a sistemelor de gestionare a bazelor de date. Modele ierarhice și de SGBD de rețea. Cerințe de bază pentru o bază de date distribuită. Procesare de interogare distribuită, interoperabilitate. Tehnologie de replicare a datelor și arhitectură pe mai multe niveluri.

    rezumat, adăugat 29.11.2010

    Informații teoretice și concepte de bază ale bazelor de date. Sisteme de gestionare a bazelor de date: compoziție, structură, siguranță, moduri de funcționare, obiecte. Lucrul cu baze de date în OpenOffice.Org BASE: crearea de tabele, linkuri, interogări folosind Expertul de interogare.

    hârtie la termen, adăugată 28.04.2011

    Proiectarea unei baze de date a unui sistem de acceptare, procesare și înregistrare a cererilor către departamentul de tehnologie informațională; dezvoltarea de modele infologice și datalogice, implementarea unui model fizic. Crearea de aplicații pentru vizualizarea lucrului cu baza de date.

    teză, adăugată 25.01.2013

    Alocarea obiectelor informaționale și a modelului infologic al acestora. Structura logică a unei baze de date relaționale. Dezvoltarea tabelelor în sistemul de gestionare a bazei de date Access. Crearea de interogări, formulare și rapoarte în DBMS Access. Dezvoltarea aplicațiilor utilizatorului.

Să creăm o aplicație simplă de bază de date care afișează informații din tabelul „Turisti” și o înregistrare a tabelului „Informații turistice” din baza de date Microsoft Access asociată cu înregistrarea curentă a tabelei Turisti.

Pentru a face acest lucru, să creăm o aplicație Windows goală. Aspectul mediului

dezvoltarea este prezentată în Figura 39.

Figura: 39. Aplicație goală

În Figura 39, este evidențiat grupul de componente „Date”, care conține componente pentru accesarea și manipularea datelor.

Legarea datelor bazei de date la formular se realizează de către componenta „Binding Source”. Să-l transferăm în formular. După plasarea acestuia pe formular, mediul de dezvoltare ia următoarea formă (Fig. 40).

Figura: 40. Sursa de legare a componentelor din formular

Componenta nu este vizuală, deci este afișată într-un panou suplimentar. Proprietatea principală a componentei este proprietatea DataSource, care indică sursa de date. În mod implicit, proprietatea este goală, deci trebuie să-i formați valoarea. Când această proprietate este selectată, următoarea fereastră apare în fereastra de proprietăți (Fig. 41).

Figura: 41. Lista surselor de date

Lista este în prezent goală, deci trebuie să creați o nouă sursă de date alegând comanda Adăugare sursă de date de proiect pentru a crea o nouă sursă de date și a vă conecta la aceasta. Apare următoarea casetă de dialog (fig. 42).

Figura: 42. Lista surselor de date

Acest dialog oferă următoarea selecție a surselor de date:

Baza de date - Baza de date;

Serviciu - Un serviciu este un fel de serviciu care oferă date. Cel mai adesea acesta este un serviciu Web;

Obiect - Un obiect pentru selectarea unui obiect care va genera date și obiecte cu care să lucreze.

În cazul nostru, trebuie să selectați elementul „Baza de date”. Apare fereastra de selectare a conexiunii de date (Fig. 43).

Figura: 43. Alegerea unei conexiuni de date

Scopul acestui dialog este de a crea un șir de conexiune care descrie parametrii de conexiune pentru motorul ADO, cum ar fi tipul bazei de date, locația sa, numele de utilizator, caracteristicile de securitate etc.

Lista verticală a dialogului conține toate conexiunile create anterior. Dacă conexiunea necesară nu este în listă, atunci ar trebui să utilizați butonul „Conexiune nouă”. Apăsarea butonului duce la apariția următorului dialog (Fig. 44).

În acest dialog, selectați tipul sursei de date (în acest caz Microsoft Access), numele bazei de date (în acest caz, numele și locația fișierului bazei de date), numele de utilizator și parola utilizate pentru conectarea la baza de date. Butonul „Avansat” vă permite să setați un număr mare de parametri legați de diverse detalii ale mecanismului ADO. Utilizarea butonului „Testare conexiune” vă va asigura că parametrii introduși sunt corecți și că conexiunea funcționează.

Figura: 44. Crearea unei noi conexiuni

Ultimul pas al dialogului este să selectați acele tabele sau alte obiecte de bază de date care sunt necesare în această sursă de date. Fereastra de selecție este prezentată în Figura 45.

Figura: 45. Selectarea tabelelor necesare

În această fereastră, sunt selectate tabelele „Turiști” și „Informații turistice”. Deoarece în baza de date nu au fost create alte obiecte decât tabele, numai tabelele sunt afișate în Figura 45. Aceasta finalizează crearea sursei de date. Când faceți clic pe Finalizare, un set de date apare lângă BindingSource pe formular.

Acum datele conectate mai sus trebuie să fie afișate pe formular. Cea mai simplă modalitate de afișare a datelor este utilizarea componentei DataGridView din grupul de componente Date. Componenta este vizuală și arată astfel în formular (Fig. 46).

Figura: 46. \u200b\u200bComponent DataGridView

Apare imediat fereastra de setări a componentelor, care determină opțiunile sale pentru editarea datelor: „Activați adăugarea”, „Activați editarea”, „Activați ștergerea”; capacitatea de a schimba succesiunea coloanelor: „Activați reordonarea coloanelor”; precum și capacitatea de a andoca în containerul părinte.

Pentru ca componenta să afișeze date, este necesar să selectați o sursă de date în lista derulantă. Alegerea listei derulante duce la apariția următorului dialog (Fig. 47).

Figura: 47. Selectarea unei surse de date pentru DataGridView

În acest caz, am selectat tabelul „Turiști” ca sursă de date. Această selecție modifică afișajul după cum urmează (Fig. 48).

Figura: 48. Component DataGridView afișează structura tabelului

În figură, puteți vedea că există o altă componentă BindingSource și o componentă TableAdapter care funcționează cu tabelul Turisti. Vă rugăm să rețineți că în timpul proiectării sau în timpul dezvoltării, datele din tabel nu sunt afișate.

Acum trebuie să afișați date din tabelul de informații turistice conectat. Pentru a face acest lucru, vom plasa încă o componentă DataGridView pe formular și vom selecta următoarele ca sursă de date (Fig. 49).

Figura: 49. Selectarea unei surse de date pentru al doilea DataGridView

Aici, sursa de date nu este în sine tabelul „Informații turistice”, ci sursa obligatorie dintre tabelele „Turiști” și „Informații turistice”. Această selecție asigură că numai acele rânduri sunt selectate din tabelul Informații turistice care sunt asociate cu rândul curent din tabelul Turisti. De asemenea, asigură actualizarea și ștergerea corectă a datelor asociate. Funcționarea aplicației rezultate este prezentată în Figura 50.

Figura: 50. Aplicația bazei de date la locul de muncă

Navigarea prin date folosind tastele săgeată este incomodă. Există o componentă BindingNavigator pentru a simplifica navigarea prin date. Așezați-l pe formular (fig. 51).

Figura: 51. Componenta BindingNavigator din formular

Această componentă vă permite să navigați între înregistrările tabelului, să adăugați și să ștergeți rânduri de tabel. Funcționalitatea și aspectul componentei sunt personalizabile, deoarece este o bară de meniu ToolStripContainer.

Proprietatea care definește tabelul care urmează să fie navigat este proprietatea BindingSource. Setați valoarea acestei proprietăți la „TouristBindingSource”. În funcțiune, componenta arată astfel (Fig. 52).

Figura: 52. Componenta BindingNavigator la locul de muncă

Editarea datelor în celulele componentei DataGridView cu setări adecvate este posibilă, dar incomodă și nu rațională. În special, este dificil să verificați valorile introduse pentru erori. Prin urmare, pentru tabelul „Turiști”, vom crea un formular de ecran care permite afișarea datelor în componentele TextBox și editarea acestora. Pentru a face acest lucru, plasați un container de tip panou pe formular și pe el trei componente TextBox după cum urmează (Fig. 53).

Figura: 53. Panou ecran pentru editarea înregistrărilor tabelului „Turiști”

Acum este necesar să legați componentele TextBox la câmpurile corespunzătoare din tabelul „Turisti”. Pentru a face acest lucru, utilizați proprietatea din grupul DataBindings - Advanced, prezentată în Figura 54.

Figura: 54. Proprietatea "DataBindings - Advanced"

Selectarea acestei proprietăți duce la apariția dialogului prezentat în Figura 55. Acest dialog vă permite nu numai să legați datele, ci să setați și un eveniment în cadrul căruia datele vor fi actualizate, precum și formatarea datelor atunci când sunt afișate.

Pentru componenta de top TextBox din lista derulantă Binding, selectați sursa de date „TouristsBmdmgSource” și câmpul sursă - „Lastname”. Pentru componentele TextBox din mijloc și din partea de jos, selectați aceeași sursă de date și respectiv câmpurile „Nume” și „Patronimic”.

Aplicația dezvoltată în funcțiune arată după cum urmează (Fig. 56).

Figura: 55. Casetă de dialog pentru proprietatea „DataBindings - Advanced”

Figura: 56. Legarea datelor la componentele vizuale

Cu toate acestea, când se fac modificări, toate datele noi rămân doar în formular. Nu sunt stocate în baza de date și, bineînțeles, nu vor fi prezente atunci când aplicația este apelată din nou. Acest lucru se datorează faptului că datele au fost încărcate într-un set de date, care este o copie a tabelului în memorie. Toate acțiunile sunt efectuate cu această copie. Pentru ca modificările să fie reflectate în baza de date, trebuie să executați metoda de actualizare a clasei TableAdapter. Astfel, în aplicația dezvoltată este necesar să plasați butonul Actualizare și să scrieți următorul cod de program în gestionarul de evenimente Click:

turiștiTabelAdapteGUpdate (bDTur_firmDataSet); info_about_touristsTableAdapter.Update (bDTur_firmDataSet);

Acest cod actualizează informațiile din tabelele „Turiști” și „Informații turistice” furnizate de sursa de date. Rețineți că această metodă este supraîncărcată, iar variantele sale vă permit să actualizați atât un singur rând într-un tabel, cât și un grup de rânduri.

DEZVOLTAREA O CERERE DE LUCRU CU BAZE DE DATE

Roza Gaynanova

lector al Departamentului Discipline Generale Educaționale

Universitatea tehnologică națională de cercetare din Kazan

Rusia, Kazan

ADNOTARE

Articolul discută metodele de accesare a bazelor de date și interfețele de programare utilizate în aceste metode de acces. Este luată în considerare integrarea aplicațiilor Visual C # cu SGBD Microsoft SQL Server 2012. Dezvoltarea sistemului informațional „Agenția de turism” este considerată ca un exemplu.

ABSTRACT

Articolul examinează metodele de acces la baze de date și interfețele software utilizate în aceste metode de acces. Considerăm integrarea aplicațiilor Visual C # cu serverul de baze de date Microsoft SQL Server 2012. Ca exemplu, este luată în considerare dezvoltarea sistemului informațional „Agenția de turism”.

Cuvinte cheie: bază de date, SQL Server, aplicație, utilizatori, control, interogare.

Cuvinte cheie: bază de date, SQL Server, aplicație, utilizatori, element de control, interogare.

Un sistem informațional este un set interconectat de instrumente, metode și personal utilizat pentru a stoca, procesa și emite informații pentru a atinge un obiectiv stabilit. Sistemul informațional dezvoltat va fi construit folosind tehnologia client-server. În astfel de sisteme, informațiile sunt stocate pe un server, iar interfața sistemului informațional este stocată pe computerele client, prin care utilizatorii sistemului informațional au acces la date.

La dezvoltarea unui sistem informațional, trebuie rezolvate două sarcini principale:

  • sarcina de a dezvolta o bază de date pentru stocarea informațiilor;
  • sarcina de a dezvolta o interfață grafică pentru aplicațiile client.

Baza de date „Agenția de turism” este creată pe Microsoft SQL Server 2012. Baza de date stochează informații despre clienții acestei agenții de turism (turiști), despre tururile pe care le oferă, despre înregistrarea și plata voucherelor. În etapa de proiectare a bazei de date, sunt create tabele „Turisti”, „Tururi”, „Vouchere”, „Anotimpuri”, „Plata”. Legăturile sunt stabilite între tabele.

Aplicația agenției de turism va fi utilizată de managerul agenției de turism, managerii de vânzări, contabilul, casieria și personalul biroului agenției de turism. Unul dintre angajații biroului este numit de administratorul de sistem. Numai el va menține conturile de utilizator. În plus față de cele cinci tabele principale, este creat tabelul „Utilizatori”, care conține informații despre utilizatorii bazei de date. Acest tabel nu este legat de alte tabele. Structura acestui tabel: cod de utilizator, prenume, poziție, conectare și parolă. Numai un administrator de sistem poate modifica acest tabel.

Securitatea SQL Server este construită pe două concepte: autentificare și autorizare. Administratorul sistemului de securitate SQL Server creează un obiect de conectare separat pentru fiecare utilizator. Acest obiect conține numele contului de utilizator SQL Server, parola, numele complet calificat și alte atribute care controlează accesul la bazele de date SQL Server. Prin conectarea la SQL Server, utilizatorul obține acces la bazele de date în care este înregistrat contul său. Pentru a înregistra un cont cu o anumită bază de date, administratorul de sistem creează acolo un nume de utilizator al bazei de date și îl asociază cu un anumit cont. Administratorul de sistem acordă utilizatorilor anumite privilegii. Un manager de vânzări poate face modificări la tabelele „Turisti”, „Tururi” și poate modifica coloana „Număr_de_sezi” din tabelul „Tururi” după vânzarea turului următor. Un angajat al agenției de turism poate face modificări la tabelele „Anotimpuri” și „Tururi”. Contabil și casier - în tabelul „Plăți”.

Puteți acorda permisiuni în SQL Server Management Studio deschizând ferestrele de proprietăți ale utilizatorului corespunzător. De asemenea, puteți reprezenta permisiuni folosind instrucțiunea GRANT. Exemple de acordare a autorității unui manager. Următoarea declarație îi acordă utilizatorului Menedger dreptul de a vizualiza, modifica tabelul Turistilor, introduce rânduri noi și șterge date învechite.

Agenția de turism USE

SUBVENIȚI SELECTARE, ACTUALIZARE, INSERARE, ȘTERGERE

ON Turisti

O instrucțiune similară este creată pentru lucrul cu tabelul „Tours”. Pentru a oferi managerului dreptul de a schimba o singură coloană din tabelul „Tours”, numele coloanei variabile Tours (Număr de locuri) este indicat între paranteze după numele tabelului. Furnizate operațiuni SELECT, UPDATE.

Există patru instrucțiuni în Limbajul de control al datelor (DCL): COMMIT, ROLLBACK, GRANT, REVOKE. Toate aceste instrucțiuni sunt legate de protejarea bazei de date împotriva daunelor accidentale sau dăunătoare. Bazele de date sunt vulnerabile exact atunci când se fac modificări la acestea. Pentru a proteja baza de date, SQL este limitat la operațiuni. Ceea ce o poate modifica, astfel încât să fie executate numai în cadrul tranzacțiilor. Când mai mulți utilizatori încearcă să utilizeze aceeași tabelă de baze de date în același timp, se creează o situație de acces simultan. Problemele de concurență apar chiar și în aplicații relativ simple dacă aplicația este instalată și rulează pe un sistem multi-utilizator care nu are control simultan. Nu apare niciun conflict de tranzacție dacă sunt executate secvențial.

Unul dintre principalele instrumente pentru menținerea integrității bazei de date este tranzacția. O tranzacție încapsulează toate instrucțiunile SQL care pot afecta baza de date. Tranzacția SQL se încheie cu una dintre cele două instrucțiuni: COMMIT sau ROLLBACK. Dacă o tranzacție se încheie cu o declarație ROLLBACK, atunci toate declarațiile sale sunt anulate și baza de date este readusă la starea inițială. O tranzacție normală poate rula în unul din cele două moduri: READ-WRITE (read-write) sau READ-ONLY (read-only). Tranzacția poate fi setată la unul dintre următoarele niveluri de izolare: SERIAIZABIL (executare secvențială), REPEATABLE READ (citire repetată), READ UNCOMMITED (citire date neconfirmate). Funcțiile implicite sunt READ-WRITE și SERIAIZABLE. Caracteristicile implicite ale tranzacției SQL sunt în general adecvate pentru majoritatea utilizatorilor.

Aplicația este creată în Visual Studio 2012 utilizând limbajul de programare C #. Proiectarea unui produs software începe cu dezvoltarea unei interfețe cu utilizatorul.

Fereastra principală a aplicației ar trebui să apeleze funcțiile principale pentru lucrul cu aplicația (Figura 1). Meniul este utilizat pentru a efectua aceste operații. Meniul constă din următoarele elemente: „Tabelele”, „Interogări”, „Rapoarte”. Fiecare dintre aceste puncte conține subpuncte. Fiecare funcție va fi executată în propria sa fereastră. Elementul MenuStrip este instalat în fereastra principală a aplicației, se formează opțiuni de meniu. Elementul PictureBox este plasat pe fereastra formularului. O imagine este încărcată în zona elementului. Desenul ar trebui să acopere întreaga zonă. Proprietatea SizeMode setează scalarea imaginii. Pentru această proprietate, StretchImage este selectat din lista derulantă, desenul este scalat astfel încât să ocupe întreaga suprafață a obiectului.

Controlul comboBox este instalat pentru a afișa lista utilizatorilor care au dreptul să lucreze cu baza de date a Agenției de turism. Elementul comboBox se leagă de o sursă de date. Fereastra " DINomboBox Sarcini", În care este bifată caseta de selectare" Utilizați elemente legate de date ", dacă această casetă de selectare este bifată, se deschid opțiunile de legare a datelor. Elementul comboBox este legat de tabelul Utilizatori, iar Nume este selectat în rândul Afișare membru. Pentru a introduce datele de conectare, este instalat controlul textbox1, pentru a introduce parola textBox2. Pentru elementele textBox1 și textBox2, proprietatea UsesSystemPasworChar este setată la true, care specifică dacă textul din caseta de text trebuie afișat folosind caracterele implicite ale parolei. Sunt instalate două butoane de comandă „Login” și „Change user”.

Când un element comboBox este legat de tabelul Utilizatori, gestionarul de evenimente Form1_Load apare în codul de program al formularului.

private void Form1_Load (expeditor obiect, EventArgs e)

this.usersTableAdapter1.Fill (this.tour agencyDataSet10.Users);

Meniul nu este disponibil la pornirea aplicației. Pentru a intra în sistem, trebuie să introduceți datele utilizatorului și să faceți clic pe butonul „Autentificare”. Când se încarcă formularul, numele de utilizator conținute în tabelul Utilizatori sunt încărcate în controlul comboBox1. În acest handler, se adaugă linii care fac meniurile inaccesibile, butonul „Schimbă utilizatorul” și în elementul comboBox1 nu este selectat niciun element:

menuStrip1.Enabled \u003d false; comboBox1.SelectedIndex \u003d -1;

button2.Enabled \u003d false;

Figura 1. Vizualizarea ferestrei principale a aplicației

Când faceți clic pe butonul „Autentificare”, se verifică dacă există un utilizator în tabelul „Utilizatori” cu acest nume de familie și dacă datele de conectare și parola sunt introduse corect. Zona de descriere a clasei formularului descrie parametrii trecuți comenzii sql. Aceștia sunt trei parametri: numele de utilizator al utilizatorului, numele de utilizator și parola.

parfum de șir privat, parpasw, parlog;

Linia este adăugată la spațiul de nume:

folosind System.Data.SqlClient;

// Handler de evenimente pentru a face clic pe butonul „Autentificare”

șir sql \u003d "";

șir connstr \u003d @ "Sursă de date \u003d B302CN-8 \\ TEST_SQL; Catalog inițial \u003d Agenție de turism; Securitate integrată \u003d Adevărat";

SqlDataReader cmReader;

parfam \u003d comboBox1.Text; parlog \u003d textBox1.Text;

SqlConnection conn \u003d new SqlConnection (connstr);

sql \u003d "SELECȚEAZĂ prenumele, autentificarea, parola de la utilizatori" +

"UNDE (Nume \u003d @fam) și (Parolă [e-mail protejat])";

SqlCommand cmdkod \u003d new SqlCommand (sql, conn);

cmdkod.Parameters.Add (SqlParameter nou ("@ fam", SqlDbType.NChar, 25));

cmdkod.Parameters ["@ fam"]. Value \u003d parfam;

cmdkod.Parameters.Add (nou SqlParameter ("@ pasw", SqlDbType.NChar, 10));

cmdkod.Parameters ["@ pasw"]. Value \u003d parpasw;

cmdkod.Parameters.Add (SqlParameter nou ("@ log", SqlDbType.NChar, 15));

cmdkod.Parameters ["@ log"]. Value \u003d parlog;

if (! cmReader.Read ())

MessageBox.Show („Parolă greșită!”);

cmReader.Close (); conn.Close ();

menuStrip1.Enabled \u003d adevărat; comboBox1.SelectedIndex \u003d -1;

button1.Enabled \u003d false; button2.Enabled \u003d true;

textBox1.Text \u003d ""; textBox1.Enabled \u003d false;

textBox2.Text \u003d ""; textBox2.Enabled \u003d false;

comboBox1.Enabled \u003d false;

cmReader.Close ();

private void button2_Click (expeditor obiect, EventArgs e)

menuStrip1.Enabled \u003d false; comboBox1.Enabled \u003d adevărat;

textBox1.Enabled \u003d adevărat; textBox2.Enabled \u003d adevărat;

button1.Enabled \u003d true; button2.Enabled \u003d false;

Descrierea funcționării dispozitivului de gestionare a evenimentelor pentru apăsarea butonului „Enter”

Șirul de conectare conține șirul de conexiune. Linia sql scrie textul interogării generate, începând cu instrucțiunea select, după care sunt listate câmpurile selectabile din tabelele care sunt specificate după cuvântul de la.

Handlerul creează o nouă instanță a obiectului SqlConnection care oferă o conexiune la serverul SQL. Obiectul SqlCommand conține o comandă cu trei parametri pentru căutarea în tabelul Users a unui utilizator cu numele de familie, datele de conectare și parola date. Handlerul button1_Click deschide o SqlConnection. Handlerul execută apoi comanda SQL stocată în obiectul cmdkod.

cmReader \u003d cmdkod.ExecuteReader ();

Ca urmare a executării metodei ExecuteReader, se creează un obiect al clasei SqlDataReader, care vă permite să citiți secvențial toate liniile executării comenzii SQL. Pentru selecție, se utilizează metoda SqlDataReader. Citit. Dacă tabelul „Utilizatori” nu conține nicio înregistrare cu numele de familie, datele de conectare și parola specificate, atunci metoda cmReader.Read () va returna false. Aceasta înseamnă că ați introdus un nume de utilizator sau o parolă incorectă. În acest caz, se afișează un mesaj despre datele incorecte introduse, obiectele cmReader și SqlConnection sunt închise. Dacă datele de utilizator sunt introduse corect, meniul și butonul „Schimbare utilizator” devin disponibile. Butonul „Conectare” devine indisponibil. Elementele textBox1 și textBox2 sunt șterse și sunt inaccesibile. Elementul comboBox1 devine, de asemenea, inaccesibil (Figura 2)

Figura 2. Vizualizarea ferestrei principale după autentificarea utilizatorului

Tabelele și rezultatele interogării vor fi afișate pe comenzile DataGridView. Scopul principal al acestor elemente este legarea la tabele de surse de date externe, în principal la tabele de baze de date. Pentru confortul vizualizării și introducerii intrărilor noi, tabelele „Anotimpuri”, „Tururi” și „Tururi”, „Plată” vor fi afișate două într-o singură fereastră. Fiecare control DataGridView este asociat cu un tabel corespunzător din baza de date a Agenției de turism. În această fereastră este selectat tabelul „Turiști” (Figura 3). Când finalizați conexiunea (faceți clic pe Finalizare), componentele DataSet, BindingSource și TableAdapter apar pe formular. Aceste componente nu sunt vizuale, deci sunt afișate în panoul suplimentar. DataSet este un obiect specializat care conține o imagine a bazei de date. Pentru a implementa interacțiunea dintre DataSet și sursa de date reală, se utilizează un obiect de tip TableAdapter. Numele însuși al acestui obiect - adaptor, convertor - indică natura acestuia. TableAdapter conține metodele de completare și actualizare care efectuează transferuri de date înainte și înapoi între setul de date și tabelul stocat în baza de date SQL a serverului. Metoda Fiil umple DataSet cu date de pe SQL Server și Update actualizează baza de date SQL Server cu date din DataSet local. Componenta BindingSource facilitează legarea controalelor dintr-un formular la date. Proprietatea principală a componentei BindingSource este proprietatea Data Source, care indică sursa de date.

Când tabelele sunt conectate la surse de date, gestionarul de evenimente Form2_Load apare în codul de program al formularului.

private void Form2_Load (expeditor obiect, EventArgs e)

this.touristsTableAdapter.Fill (this.travel agencyDataSet9.Tourists);

Când se încarcă formularul, datele conținute în tabelul Turisti sunt afișate pe controlul DataGridView din fereastra formularului Form2. Puteți face modificări în tabel și puteți adăuga înregistrări noi. După efectuarea modificărilor, faceți clic pe butonul „Salvați turiștii”. Gestionarul de evenimente pentru a face clic pe butonul „Salvați turiștii”:

private void button1_Click (expeditor obiect, EventArgs e)

seasonsTableAdapter.Update (agentia de turismDataSet9);

MessageBox.Show („Date salvate”);

Figura 3. Vizualizarea ferestrei cu tabelul „Turisti”

Fiecare solicitare este afișată într-o fereastră separată. În fereastra Form1, un element nou cu numele cererii este adăugat la meniul Interogări. Dacă interogarea nu are parametri, un control DataGridView este instalat în fereastra formularului pentru a afișa rezultatele executării interogării și se leagă de procedura corespunzătoare sau funcția de bază de date.

Acest articol descrie câteva metode pentru dezvoltarea aplicațiilor care funcționează cu baze de date, o modalitate de organizare a accesului pentru a lucra cu un număr limitat de persoane, modalități de integrare a aplicațiilor Visual C # cu un server Microsoft SQL Server 2012. Când utilizați limbajul de programare Visual C # cu SQL, puteți crea aplicații cu o gamă largă de capabilități. Principalul punct forte al SQL constă în recuperarea datelor. Indiferent câte rânduri există în tabel, le puteți prelua cu o singură instrucțiune SELECT. În același timp, principalul dezavantaj al limbajului SQL este interfața sa de utilizator subdezvoltată. Folosind limbaje procedurale, puteți crea interfețe ușor de utilizat pentru introducerea și vizualizarea datelor. Cea mai obișnuită tehnică pentru combinarea SQL cu limbaje procedurale se numește injecție SQL. Instrucțiunea SQL este inserată în locația dorită în programul procedural. Informațiile trebuie să curgă între un program scris într-un limbaj procedural și codul SQL. Pentru aceasta sunt utilizate variabile de bază. Pentru ca SQL să recunoască aceste variabile, acestea trebuie declarate. Variabilele sunt declarate în zona de descriere a clasei din formular înainte de descrierea codului. În cod, obiectul SqlConnection nou creat oferă o conexiune la serverul SQL. Obiectul SqlCommand oferă executarea comenzii SQL încorporate.

Bibliografie:

  1. Allen Taylor. SQL pentru manechine, ediția a 8-a: per. din engleza. - M.: LLC „I.D. Williams ”, 2014. - 416 p.
  2. Gaynanova R.Sh. Dezvoltarea de aplicații pentru lucrul cu baze de date MS SQL Server 2012 // Științe fundamentale și aplicate astăzi: Lucrările celei de-a XI-a conferințe practice internaționale (10-11 aprilie 2017 Noth Charleston, SUA), volumul 3 - p. 34-41.
  3. Frolov A.V., Frolov G.V. Proiectare vizuală a aplicațiilor C #. - M.: KUDRITS-OBRAZ, 2003, - 512s.