Sunteți pe pagina 1din 5

Medii de programare vizuala

An univ. 2021-2022

BAZE DE DATE IN C# .NET


În Visual Studio .NET controalele și c omponentele puse la dispoziție pentru lucrul cu baze de date
permit utilizatorului să interacționeze cu aplicația, aceasta afișând date către utilizator, iar mediul de
programare controlând aplicația. Controalele și componentele specializate aduc datele din baza de date
către aplicație, permițând acesteia să trimită înapoi date către baza de date.
OLE DB (OLEDB or Object Linking and Embedding Database) este OLE DB este o interfața API
(Application Program Interface) de nivel scăzut, furnizata de catre Microsoft, pentru acces la diferite
surse de date relationale si non-relationale (noSQL). Pentru citirea si scrierea datelor din/in baza de
date accesata, OLE DB pune la dispozitie o serie de clase pentru definirea unor obiecte, precum:
obiecte de tip Connection, DataAdapter, Command si DataSet.
Obiectul de tip Connection definește conexiunea la baza de date. Acesta conține informații despre
baza de date cum ar fi numele, locația, nume de utilizator și parolă, necesare pentru accesarea datelor
și informații despre provider-ul bazei de date.
Adaptorul de date definește o mapare de la baza de date la DataSet. Aceasta determină ce tip de date
sunt selectate din baza de date și care coloane din baza de date vor fi mapate pe coloanele din
DataSet.
Obiectele de tip DataSet stochează datele în interiorul aplicației. Acestea pot stoca unul sau mai
multe tabele și pot defini sau forța relații între tabele. Odată inițializată conexiunea împreună cu
obiectele DataAdapter și DataSet, programul poate apela metoda Fill() a obiectului DataAdapter
pentru copierea datelor din baza de date în DataSet. Mai târziu se poate apela metoda Update() pentru
copierea oricăror modificări ale înregistrărilor din DataSet înapoi în baza de date.

OleDbDataAdapter da;
DataSet ds;
OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=|DataDirectory|\\BD1.accdb");

con.Open();           
string sql = "select id, denumire, valoare from Tabela1";
da = new OleDbDataAdapter(sql, con);
ds = new DataSet();
da.Fill(ds, "Tabela1");
Medii de programare vizuala
An univ. 2021-2022

Intr-o abordare interactiva a realizarii unei conexiuni cu o baza de date (Project -> Add New Data
Source …) intervin si controalele BindingSource și BindingNavigator. Obiectul BindingSource
încapsulează toate datele din DataSet și oferă funcții pentru controlul acestora din cadrul programului.
Aceste funcții efectuează acțiuni cum ar fi: mutarea datelor, adăugarea sau ștergerea elementelor, etc.
BindingNavigator oferă o interfață grafică pentru ca utilizatorul să poată controla
BindingSource.

Dupa definirea conexiunii la baza de date (de ex. BD1.accdb), in proiect vor fi adaugate obiecte noi. In
fereastra Solution Explorer este afisata baza de date BD1.accdb si fisierul BD1DataSet.xsd, care
descrie sursa de date.

Un dublu click pe fișierul *.xsd, va deschide un editor care va afișa obiectele (tabele si/view-uri) din
baza de date BD1.accdb.
Medii de programare vizuala
An univ. 2021-2022

Se pot observa două obiecte de tip data adapter care conțin etichetele “Fill, GetData()”. Aceste obiecte
vor fi folosite mai târziu în aplicație pentru a muta datele din/în baza de date.
Totodata, in fereastra Data Sources se poate observa aparitia unui obiect nou de tip DataSet, si anume
BD1DataSet.

Dacă facem click pe unul dintre tabelele afișate în Data Sources apoi îl tragem cu drag-and drop peste
Form1, C# creează automat controalele BindingNavigator și DataGridView, precum și alte
componente utile pentru afișarea datelor din tabela.
Medii de programare vizuala
An univ. 2021-2022

În loc să afișăm tot tabelul pe formular intr-un DataGridView, putem să tragem numai anumite
câmpuri din tabel. În acest caz, C# adaugă controale pe formular pentru a reprezenta coloanele
(Tabela1 -> Details).
Medii de programare vizuala
An univ. 2021-2022

S-ar putea să vă placă și