Sunteți pe pagina 1din 9

= librărie de clase (Microsoft .

NET Framework) destinată accesării și manipulării


datelor stocate în diverse formate.
- suport pentru implementarea straturilor Business Logic și Data Access
- asigură translatarea datelor între formatele relațional și cel orientat-obiect
- locație: spațiul de nume System.Data

Modelul Orientat-Obiect ADO.NET Modelul Relațional


Clase/obiecte Tabele+Relații
(atribute+metode) (câmpuri, chei, înregistrări)

conf.dr. Adrian Cozgarea


1. DataSet: structură orientată pe obiecte pentru gestiunea datelor în
format relațional (tabele și legături între tabele)

2. Entity Framework: structură obiectuală pentru date reprezentate într-


un format conceptual, independent de modelul relațional.

conf.dr. Adrian Cozgarea


1. Conectare
3. Import date din B.D. în setul de date

5. Salvare date în B.D.

2. Creare structură obiectuală


aferentă B.D.(set de date)

4. Actualizare
set de date Server

ADO.NET
conf.dr. Adrian Cozgarea
= container de obiecte stocate pe client (în memoria internă!) într-un
format similar cu cel relațional (tabele și relații).
= echivalentul orientat pe obiecte al unei baze de date relaționale
- conține două elemente (mai) importante:
• o colecţie de obiecte DataTable (v. proprietatea Tables) ,
• o colecţie de obiecte DataRelation (v. proprietatea Relations)

conf.dr. Adrian Cozgarea


= corespondentul orientat-obiect al unui tabel relațional.
Obiectele DataTable sunt stocate în memoria internă a nivelului client
(arhitectura 3-tier).
Proprietăţi:
• TableName - denumirea tabelului
• Columns - colecție de obiecte DataColumn corespunzătoare coloanelor
(câmpurilor) din tabel
• Rows - colecție de obiecte DataRow aferente înregistrărilor (tuplurilor) din
tabelul relațional
• Constraints - restricții aplicate datelor din tabel: ForeignKeyConstraint /
UniqueConstraint.
• PrimaryKey - un vector (array) alcătuit din coloanele care formează cheia
primară
• ChildRelations - colecție de relații (obiecte DataRelation) cu tabelele
subordonate(copii)
• ParentRelations - colecție formată din legăturile cu tabelele părinte.
Metode:
• NewRow () – retunează un rând nou(obiect DataRow)

conf.dr. Adrian Cozgarea


= descriere obiectuală a unui câmp/coloană dintr-un DataTable.
Proprietăţi:
• ColumnName - denumirea câmpului
• AutoIncrement - indică un câmp cu valori generate automat, prin
incrementare (= Autonumber/ Identity)
• AllowDBNull - coloana acceptă sau nu valoarea DBNull (=null)
• DataType - precizează tipul câmpului.
Tipuri specifice .NET(!): System.String, System.DateTime, System.Decimal,
System.Int32 etc.
• Unique – câmpul acceptă/nu valori unice

conf.dr. Adrian Cozgarea


= descrie rânduri/înregistrări dintr-un tabel
Proprietăţi:
• Item (index/numeColoană)- referă valoarea unei coloane din
rândul curent
• RowState - indică starea unui rând din DataSet (nou, modificat,
șters ș.a.)
Metode:
• Delete() - șterge rândul curent

conf.dr. Adrian Cozgarea


- descrie relațiile/legăturile dintre obiectele DataTable și asigură navigarea
între rândurile corespondente.
Proprietăţi:
• RelationName - denumirea relației
• ParentTable - obiectul DataTable cu rol de părinte
• ParentColumns - vector de obiecte DataColumn din tabelului părinte,
care formează cheia primară a acestuia.
• ParentKeyConstraint - restricția UniqueConstraint aplicată coloanelor
din tabelul părinte
• ChildTable - obiectul DataTable cu rol de copil
• ChildColumns - vector de obiecte DataColumn care formează cheia
externă
• ChildKeyConstraint - restricția ForeignKeyConstraint aferentă cheii
externe.
conf.dr. Adrian Cozgarea
= vedere dinamică asupra rândurilor unui DataTable, realizată prin ordonarea (Sort)
sau filtrarea (Filter) acestora.
- conține toate coloanele din tabelul sursă
- nu este echivalenta compunerii(JOIN) din SQL!
- utilizată îndeosebi de controalele legate la date.

Proprietăţi:
• Table - sursa de date (DataTable) a vederii
• Item - returnează un rând al vederii (obiect DataRowView) în funcție de
indexul său
• Sort - denumirile coloanelor după care se face sortarea
• RowFilter – expresia de filtrare (ex: ”nume=‘Popescu’ ”)
• Count – numărul de rânduri după aplicarea filtrului.

conf.dr. Adrian Cozgarea

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