SlideShare a Scribd company logo
1 of 16
ADO.NET
Модуль 1
Що таке ADO.NET?
Andrey Gladky
KspDevelop@gmail.com 2
Платформа .NET визначає ряд просторів імен, які дозволяють
взаємодіяти з базами даних. Всі разом ці простори імен відомі як
ADO.NET (ActiveX Data Objects .NET).
ADO.NET надає узгоджений доступ до SQL Server і XML, а також
до джерел даних, що надаються за допомогою OLE DB (Object
Linking and Embedding, Database) і ODBC (Open Database
Connectivity).
ADO.NET розділять доступ до даних і обробку даних на
дискретні компоненти, які можуть використовуватися окремо або
разом.
ADO.NET включає постачальників даних .NET Framework для
з'єднання з базою даних, виконання команд і отримання
результатів. Ці результати, поміщені в об'єкт ADO.NET DataSet.
ODBC
Andrey Gladky
KspDevelop@gmail.com 3
ODBC - (Open Database Connectivity) - це програмний інтерфейс
(API) доступу до баз даних, розроблений фірмою Microsoft, у
співпраці з Simba Technologies на основі специфікацій Call Level
Interface (CLI), який розроблявся організаціями SQL Access Group,
X/Open і Microsoft.
За допомогою ODBC прикладні програмісти могли розробляти
програми для використання одного інтерфейсу доступу до даних,
не турбуючись про тонкощі взаємодії з декількома джерелами.
Це досягається завдяки тому, що постачальники різних баз даних
створюють драйвери, що реалізують конкретне наповнення
стандартних функцій з урахуванням особливостей їхнього
продукту. ODBC API
DAO
Andrey Gladky
KspDevelop@gmail.com 4
Об'єкт доступу до даних (data access object) (DAO) - об'єкт що
надає абстрактний інтерфейс до деяких видів баз даних чи
механізмів персистентності реалізуючи певні операції без
розкриття деталей бази даних.
Він надає відображення від програмних викликів до рівня
персистентності.
Перевагою використання об'єкту доступу до даних є досить
просте розділення двох частин програми: бізнес логіки, та логіки
персистентності.
Персистентність в програмуванні означає здатність стану існувати довше, ніж процес,
що створив його.
Це досягається шляхом зберігання стану як даних на пристрої тривалого зберігання,
такому як жорсткий диск чи флеш-пам'ять.
OLE DB
Andrey Gladky
KspDevelop@gmail.com 5
OLE DB (Object Linking and Embedding, Database) - набір
інтерфейсів, заснованих на COM, які дозволяють додаткам
отримувати доступ до даних, що зберігаються в різних джерелах
інформації або сховищах даних за допомогою уніфікованого
доступу.
OLE DB є API, розроблена Microsoft для доступу до різних типів
даних, які зберігаються в єдиній формі.
Вона була розроблена в якості подальшого розвитку і повинна
прийти на заміну і в якості наступника ODBC, розширюючи набір
функцій для підтримки більш широкого кола нереляційних
джерел даних, таких як об'єктно-орієнтовані бази даних або
електронні таблиці, і для яких не обов'язково використовувати
SQL.
ADO
Andrey Gladky
KspDevelop@gmail.com 6
ADO (ActiveX Data Objects) — прикладний програмний інтерфейс
для доступу до даних, розроблений компанією Microsoft (MS
Access, MS SQL Server) і заснований на технології компонентів
ActiveX. ADO дозволяє представляти дані з різноманітних
джерел: (реляційної СУБД, текстових файлів тощо) в об'єктно-
орієнтованому програмуванні виді.
Компоненти ADO використовуються в мовах високого рівня,
таких як VBScript в ASP, JScript в WSH, Visual Basic, Delphi.
Останньою версією ADO є версія 2.8.
У рамках платформи Microsoft. NET інтерфейс ADO замінений на
ADO.NET.
Провайдери (постачальники) даних ADO.NET
Andrey Gladky
KspDevelop@gmail.com 7
Для вилучення, оновлення, вставки і видалення даних необхідно
підключитися до фізичної бази даних. Програмне забезпечення
ADO.NET для під'єднання і взаємодії з фізичної базою даних
називається провайдером даних ADO.NET.
Провайдер даних (data provider) - це керований код .NET, який
еквівалентний провайдеру OLEDB або драйверу ODBC.
Провайдер даних складається з декількох об'єктів, які реалізують
необхідну функціональність відповідно до визначень своїх класів
і інтерфейсів.
Провайдери даних .NET Framework є спрощеними і створюють
мінімальний рівень між джерелом даних і кодом, збільшуючи тим
самим продуктивність без збитку для функціональних
можливостей.
Провайдери даних ADO.NET
Andrey Gladky
KspDevelop@gmail.com 8
Постачальник даних
.NET Framework
Опис
.NET Framework постачальник
даних для SQL Server
Надає доступ до даних для Microsoft SQL Server.
Використовує простір імен System.Data.SqlClient.
Постачальник даних .NET
Framework для OLE DB
Для джерел даних OLE DB. Використовує простір імен
System.Data.OleDb.
Постачальник даних .NET
Framework для ODBC
Для джерел даних ODBC. Використовує простір імен
System.Data.Odbc.
Постачальник даних .NET
Framework для Oracle
Для джерел даних Oracle. Джерело даних .NET
Framework для Oracle підтримує клієнтське програмне
забезпечення версії 8.1.7 і старше і використовує простір
імен System.Data.OracleClient.
EntityClient - постачальник Надає доступ до даних для додатків моделі EDM (Entity
Data Model). Використовує простір імен
System.Data.EntityClient.
Постачальник даних .NET
Framework для SQL Server
Compact 4.0.
Надає доступ до даних для Microsoft SQL Server
Compact 4.0. Використовує простір імен
System.Data.SqlServerCe.
Andrey Gladky
KspDevelop@gmail.com 9
Моделі роботи ADO.NET
Приєднаний режим
Andrey Gladky
KspDevelop@gmail.com 10
При використанні підключеного режиму, кодова база
явно підключається до відповідного сховища даних і
відключається від нього. При такому способі
використання ADO.NET зазвичай відбувається взаємодія
зі сховищем даних за допомогою об'єктів підключення,
об'єктів команд і об'єктів читання даних.
Автономний режим
Andrey Gladky
KspDevelop@gmail.com 11
Автономний режим дозволяє працювати з набором
об'єктів DataTable (містяться в DataSet), який
представляє на стороні клієнта копію зовнішніх даних.
При отриманні DataSet за допомогою відповідного
об'єкта адаптера даних, підключення відкривається і
закривається автоматично.
Отримавши об'єкт DataSet, код може переглядати і
обробляти дані без витрат на мережевий трафік. А якщо
потрібно занести зміни в сховище даних, то адаптер
даних (разом з набором операторів SQL) задіюється для
оновлення даних - при цьому підключення відкривається
заново для проведення оновлень в базі, а потім відразу ж
закривається.
Andrey Gladky
KspDevelop@gmail.com 12
Концепція інтерфейсів і
базових класів ADO.NET
Інтерфейси ADO.NET
Andrey Gladky
KspDevelop@gmail.com 13
Інтерфейс Опис
IDbConnection IDbConnection реалізований об'єктом підключення
постачальника даних. Цей інтерфейс визначає набір членів, які
застосовуються для налаштування підключення до
конкретного сховища даних, а, крім того, дозволяє отримати
об'єкт транзакції постачальника даних..
IDbTransaction Перевантажений метод BeginTransaction(), визначений в
інтерфейсі IDbConnection, щоб перейти до вибору об'єкту
транзакції постачальника. Члени, визначені в IDbTransaction,
дозволяють програмним чином взаємодіяти з сеансом
транзакцій і відповідним сховищем даних:
IDbCommand Як і інші об'єктні моделі доступу до даних, об'єкти команди
дозволяють програмно працювати з операторами SQL,
збереженими процедурами і параметризованих запитами. Крім
того, об'єкти команди забезпечують доступ до типу читання
даних постачальника даних за допомогою перевантаженого
методу ExecuteReader ():
Інтерфейси ADO.NET
Andrey Gladky
KspDevelop@gmail.com 14
Інтерфейс Опис
IDbDataParameter
і IDataParameter
Властивість Parameters інтерфейсу IDbCommand
повертає строго типізовану колекцію, яка реалізує
IDataParameterCollection. Цей інтерфейс надає доступ до
набору класів, сумісних з IDbDataParameter (об'єкти
параметрів)
DataReader і
IDataRecord
IDataReader, який представляє загальну поведінку, яка
підтримується конкретним об'єктом читання даних.
Отримавши від постачальника даних ADO.NET тип,
сумісний з IDataReader, ви зможете виконувати прохід за
результуючого набору тільки в прямому напрямку тільки
для читання.
Основні об’єкти провайдерів даних ADO.NET
Andrey Gladky
KspDevelop@gmail.com 15
Object Опис
Connection Встановлює з'єднання з конкретним джерелом даних. Базовим
класом для всіх об'єктів Connection є DbConnection.
Command Виконує команду в джерелі даних. Забезпечує доступність
Parameters і може виконувати команди в області Transaction з
Connection. Базовим класом для всіх об'єктів Command є
DbCommand.
DataReader Зчитує з джерела даних однопрохідний потік даних тільки для
читання. Базовим класом для всіх об'єктів DataReader є
DbDataReader.
DataAdapter Заповнює DataSet і виконує оновлення в джерелі даних.
Базовим класом для всіх об'єктів DataAdapter є DbDataAdapter.
Andrey Gladky
KspDevelop@gmail.com 16
Демонстрація

More Related Content

Similar to Ado.net module 1

Тема 5. Простори даних.
Тема 5. Простори даних.Тема 5. Простори даних.
Тема 5. Простори даних.Oleg Nazarevych
 
Lecture 206 - Database application design
Lecture 206 - Database application designLecture 206 - Database application design
Lecture 206 - Database application designAndrii Kopp
 
реферат з інформатики
реферат з інформатикиреферат з інформатики
реферат з інформатикиTanyushka Bora-Bora
 
Lecture 105 - Relational data model
Lecture 105 - Relational data modelLecture 105 - Relational data model
Lecture 105 - Relational data modelAndrii Kopp
 
Поняття моделі даних, бази даних
Поняття моделі даних, бази данихПоняття моделі даних, бази даних
Поняття моделі даних, бази данихVladyslavKochkin
 
Lesson22 the concepts of databases and database management systems, their pur...
Lesson22 the concepts of databases and database management systems, their pur...Lesson22 the concepts of databases and database management systems, their pur...
Lesson22 the concepts of databases and database management systems, their pur...Nikolay Shaygorodskiy
 
Web service lecture
Web service lectureWeb service lecture
Web service lectureeleksdev
 
[Knowledge Sharing] - Microservices Step-by-Step
[Knowledge Sharing] - Microservices Step-by-Step[Knowledge Sharing] - Microservices Step-by-Step
[Knowledge Sharing] - Microservices Step-by-StepExoft LLC
 
5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPCПупена Александр
 
Net framework і c# module 16
Net framework і c# module 16Net framework і c# module 16
Net framework і c# module 16Andrii Hladkyi
 
System programing module 2
System programing module 2System programing module 2
System programing module 2Andrii Hladkyi
 
Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...
Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...
Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...Oleg Nazarevych
 
поняття моделі даних
поняття моделі данихпоняття моделі даних
поняття моделі данихJulia Stepsnuk
 
Lecture 106 - SQL query language
Lecture 106 - SQL query languageLecture 106 - SQL query language
Lecture 106 - SQL query languageAndrii Kopp
 
Презентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєть
Презентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєтьПрезентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєть
Презентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєтьkostyasheremetyev1
 

Similar to Ado.net module 1 (20)

Тема 5. Простори даних.
Тема 5. Простори даних.Тема 5. Простори даних.
Тема 5. Простори даних.
 
ASP.Net MVC
ASP.Net MVCASP.Net MVC
ASP.Net MVC
 
Lecture 206 - Database application design
Lecture 206 - Database application designLecture 206 - Database application design
Lecture 206 - Database application design
 
реферат з інформатики
реферат з інформатикиреферат з інформатики
реферат з інформатики
 
Ado.net module 2
Ado.net module 2Ado.net module 2
Ado.net module 2
 
Lecture 105 - Relational data model
Lecture 105 - Relational data modelLecture 105 - Relational data model
Lecture 105 - Relational data model
 
Поняття моделі даних, бази даних
Поняття моделі даних, бази данихПоняття моделі даних, бази даних
Поняття моделі даних, бази даних
 
Lesson22 the concepts of databases and database management systems, their pur...
Lesson22 the concepts of databases and database management systems, their pur...Lesson22 the concepts of databases and database management systems, their pur...
Lesson22 the concepts of databases and database management systems, their pur...
 
ASP.Net basics
ASP.Net basics ASP.Net basics
ASP.Net basics
 
Web service lecture
Web service lectureWeb service lecture
Web service lecture
 
Wcf module 1
Wcf module 1Wcf module 1
Wcf module 1
 
Wcf module 3.1
Wcf module 3.1Wcf module 3.1
Wcf module 3.1
 
[Knowledge Sharing] - Microservices Step-by-Step
[Knowledge Sharing] - Microservices Step-by-Step[Knowledge Sharing] - Microservices Step-by-Step
[Knowledge Sharing] - Microservices Step-by-Step
 
5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC
 
Net framework і c# module 16
Net framework і c# module 16Net framework і c# module 16
Net framework і c# module 16
 
System programing module 2
System programing module 2System programing module 2
System programing module 2
 
Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...
Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...
Тема 7. Моделі інтеграції - глобальна Global As View (GAV) та локальна Local ...
 
поняття моделі даних
поняття моделі данихпоняття моделі даних
поняття моделі даних
 
Lecture 106 - SQL query language
Lecture 106 - SQL query languageLecture 106 - SQL query language
Lecture 106 - SQL query language
 
Презентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєть
Презентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєтьПрезентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєть
Презентація 10 клас Урок 18 для учнів 10 класу вааааааааууу ахуєть
 

More from Andrii Hladkyi

Net framework and C# module 17. Serialization
Net framework and  C# module 17. SerializationNet framework and  C# module 17. Serialization
Net framework and C# module 17. SerializationAndrii Hladkyi
 
Net Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, AbstractionsNet Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, AbstractionsAndrii Hladkyi
 
NET Framework and C# Module 12.2. Garbage Collector
NET Framework and C# Module 12.2. Garbage CollectorNET Framework and C# Module 12.2. Garbage Collector
NET Framework and C# Module 12.2. Garbage CollectorAndrii Hladkyi
 
System programing module 2. Threads
System programing module 2. ThreadsSystem programing module 2. Threads
System programing module 2. ThreadsAndrii Hladkyi
 
System programing module 1. Processes
System programing module 1. ProcessesSystem programing module 1. Processes
System programing module 1. ProcessesAndrii Hladkyi
 
NET Framework and C# Module 6.2. Generics
NET Framework and C# Module 6.2. GenericsNET Framework and C# Module 6.2. Generics
NET Framework and C# Module 6.2. GenericsAndrii Hladkyi
 
NET Framework and C# Module 6. Delegates, Events
NET Framework and C# Module 6. Delegates, EventsNET Framework and C# Module 6. Delegates, Events
NET Framework and C# Module 6. Delegates, EventsAndrii Hladkyi
 
NET Framework and C# Module 5. Interfaces
NET Framework and C# Module 5. InterfacesNET Framework and C# Module 5. Interfaces
NET Framework and C# Module 5. InterfacesAndrii Hladkyi
 
Net Framework and c# module 2. OOP
Net Framework and c# module 2. OOPNet Framework and c# module 2. OOP
Net Framework and c# module 2. OOPAndrii Hladkyi
 
Net Framework and c# Lesson 1
Net Framework and c# Lesson 1Net Framework and c# Lesson 1
Net Framework and c# Lesson 1Andrii Hladkyi
 
Design pattern module 1
Design pattern module 1Design pattern module 1
Design pattern module 1Andrii Hladkyi
 
Win api module_2.0_gdi+
Win api module_2.0_gdi+Win api module_2.0_gdi+
Win api module_2.0_gdi+Andrii Hladkyi
 
Design pattern module 1
Design pattern module 1Design pattern module 1
Design pattern module 1Andrii Hladkyi
 

More from Andrii Hladkyi (20)

Net framework and C# module 17. Serialization
Net framework and  C# module 17. SerializationNet framework and  C# module 17. Serialization
Net framework and C# module 17. Serialization
 
Net Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, AbstractionsNet Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, Abstractions
 
NET Framework and C# Module 12.2. Garbage Collector
NET Framework and C# Module 12.2. Garbage CollectorNET Framework and C# Module 12.2. Garbage Collector
NET Framework and C# Module 12.2. Garbage Collector
 
System programing module 2. Threads
System programing module 2. ThreadsSystem programing module 2. Threads
System programing module 2. Threads
 
System programing module 1. Processes
System programing module 1. ProcessesSystem programing module 1. Processes
System programing module 1. Processes
 
NET Framework and C# Module 6.2. Generics
NET Framework and C# Module 6.2. GenericsNET Framework and C# Module 6.2. Generics
NET Framework and C# Module 6.2. Generics
 
NET Framework and C# Module 6. Delegates, Events
NET Framework and C# Module 6. Delegates, EventsNET Framework and C# Module 6. Delegates, Events
NET Framework and C# Module 6. Delegates, Events
 
NET Framework and C# Module 5. Interfaces
NET Framework and C# Module 5. InterfacesNET Framework and C# Module 5. Interfaces
NET Framework and C# Module 5. Interfaces
 
Net Framework and c# module 2. OOP
Net Framework and c# module 2. OOPNet Framework and c# module 2. OOP
Net Framework and c# module 2. OOP
 
Net Framework and c# Lesson 1
Net Framework and c# Lesson 1Net Framework and c# Lesson 1
Net Framework and c# Lesson 1
 
Wpf module 2
Wpf module 2Wpf module 2
Wpf module 2
 
Wpf module 1
Wpf module 1Wpf module 1
Wpf module 1
 
Msp module 3
Msp module 3Msp module 3
Msp module 3
 
Msp module 2
Msp module 2Msp module 2
Msp module 2
 
Msp module 1
Msp module 1Msp module 1
Msp module 1
 
Design pattern module 1
Design pattern module 1Design pattern module 1
Design pattern module 1
 
Win api module_2.0_gdi+
Win api module_2.0_gdi+Win api module_2.0_gdi+
Win api module_2.0_gdi+
 
Win api module_1.1_ok
Win api module_1.1_okWin api module_1.1_ok
Win api module_1.1_ok
 
Win api module_6.2
Win api module_6.2Win api module_6.2
Win api module_6.2
 
Design pattern module 1
Design pattern module 1Design pattern module 1
Design pattern module 1
 

Ado.net module 1

  • 2. Що таке ADO.NET? Andrey Gladky KspDevelop@gmail.com 2 Платформа .NET визначає ряд просторів імен, які дозволяють взаємодіяти з базами даних. Всі разом ці простори імен відомі як ADO.NET (ActiveX Data Objects .NET). ADO.NET надає узгоджений доступ до SQL Server і XML, а також до джерел даних, що надаються за допомогою OLE DB (Object Linking and Embedding, Database) і ODBC (Open Database Connectivity). ADO.NET розділять доступ до даних і обробку даних на дискретні компоненти, які можуть використовуватися окремо або разом. ADO.NET включає постачальників даних .NET Framework для з'єднання з базою даних, виконання команд і отримання результатів. Ці результати, поміщені в об'єкт ADO.NET DataSet.
  • 3. ODBC Andrey Gladky KspDevelop@gmail.com 3 ODBC - (Open Database Connectivity) - це програмний інтерфейс (API) доступу до баз даних, розроблений фірмою Microsoft, у співпраці з Simba Technologies на основі специфікацій Call Level Interface (CLI), який розроблявся організаціями SQL Access Group, X/Open і Microsoft. За допомогою ODBC прикладні програмісти могли розробляти програми для використання одного інтерфейсу доступу до даних, не турбуючись про тонкощі взаємодії з декількома джерелами. Це досягається завдяки тому, що постачальники різних баз даних створюють драйвери, що реалізують конкретне наповнення стандартних функцій з урахуванням особливостей їхнього продукту. ODBC API
  • 4. DAO Andrey Gladky KspDevelop@gmail.com 4 Об'єкт доступу до даних (data access object) (DAO) - об'єкт що надає абстрактний інтерфейс до деяких видів баз даних чи механізмів персистентності реалізуючи певні операції без розкриття деталей бази даних. Він надає відображення від програмних викликів до рівня персистентності. Перевагою використання об'єкту доступу до даних є досить просте розділення двох частин програми: бізнес логіки, та логіки персистентності. Персистентність в програмуванні означає здатність стану існувати довше, ніж процес, що створив його. Це досягається шляхом зберігання стану як даних на пристрої тривалого зберігання, такому як жорсткий диск чи флеш-пам'ять.
  • 5. OLE DB Andrey Gladky KspDevelop@gmail.com 5 OLE DB (Object Linking and Embedding, Database) - набір інтерфейсів, заснованих на COM, які дозволяють додаткам отримувати доступ до даних, що зберігаються в різних джерелах інформації або сховищах даних за допомогою уніфікованого доступу. OLE DB є API, розроблена Microsoft для доступу до різних типів даних, які зберігаються в єдиній формі. Вона була розроблена в якості подальшого розвитку і повинна прийти на заміну і в якості наступника ODBC, розширюючи набір функцій для підтримки більш широкого кола нереляційних джерел даних, таких як об'єктно-орієнтовані бази даних або електронні таблиці, і для яких не обов'язково використовувати SQL.
  • 6. ADO Andrey Gladky KspDevelop@gmail.com 6 ADO (ActiveX Data Objects) — прикладний програмний інтерфейс для доступу до даних, розроблений компанією Microsoft (MS Access, MS SQL Server) і заснований на технології компонентів ActiveX. ADO дозволяє представляти дані з різноманітних джерел: (реляційної СУБД, текстових файлів тощо) в об'єктно- орієнтованому програмуванні виді. Компоненти ADO використовуються в мовах високого рівня, таких як VBScript в ASP, JScript в WSH, Visual Basic, Delphi. Останньою версією ADO є версія 2.8. У рамках платформи Microsoft. NET інтерфейс ADO замінений на ADO.NET.
  • 7. Провайдери (постачальники) даних ADO.NET Andrey Gladky KspDevelop@gmail.com 7 Для вилучення, оновлення, вставки і видалення даних необхідно підключитися до фізичної бази даних. Програмне забезпечення ADO.NET для під'єднання і взаємодії з фізичної базою даних називається провайдером даних ADO.NET. Провайдер даних (data provider) - це керований код .NET, який еквівалентний провайдеру OLEDB або драйверу ODBC. Провайдер даних складається з декількох об'єктів, які реалізують необхідну функціональність відповідно до визначень своїх класів і інтерфейсів. Провайдери даних .NET Framework є спрощеними і створюють мінімальний рівень між джерелом даних і кодом, збільшуючи тим самим продуктивність без збитку для функціональних можливостей.
  • 8. Провайдери даних ADO.NET Andrey Gladky KspDevelop@gmail.com 8 Постачальник даних .NET Framework Опис .NET Framework постачальник даних для SQL Server Надає доступ до даних для Microsoft SQL Server. Використовує простір імен System.Data.SqlClient. Постачальник даних .NET Framework для OLE DB Для джерел даних OLE DB. Використовує простір імен System.Data.OleDb. Постачальник даних .NET Framework для ODBC Для джерел даних ODBC. Використовує простір імен System.Data.Odbc. Постачальник даних .NET Framework для Oracle Для джерел даних Oracle. Джерело даних .NET Framework для Oracle підтримує клієнтське програмне забезпечення версії 8.1.7 і старше і використовує простір імен System.Data.OracleClient. EntityClient - постачальник Надає доступ до даних для додатків моделі EDM (Entity Data Model). Використовує простір імен System.Data.EntityClient. Постачальник даних .NET Framework для SQL Server Compact 4.0. Надає доступ до даних для Microsoft SQL Server Compact 4.0. Використовує простір імен System.Data.SqlServerCe.
  • 10. Приєднаний режим Andrey Gladky KspDevelop@gmail.com 10 При використанні підключеного режиму, кодова база явно підключається до відповідного сховища даних і відключається від нього. При такому способі використання ADO.NET зазвичай відбувається взаємодія зі сховищем даних за допомогою об'єктів підключення, об'єктів команд і об'єктів читання даних.
  • 11. Автономний режим Andrey Gladky KspDevelop@gmail.com 11 Автономний режим дозволяє працювати з набором об'єктів DataTable (містяться в DataSet), який представляє на стороні клієнта копію зовнішніх даних. При отриманні DataSet за допомогою відповідного об'єкта адаптера даних, підключення відкривається і закривається автоматично. Отримавши об'єкт DataSet, код може переглядати і обробляти дані без витрат на мережевий трафік. А якщо потрібно занести зміни в сховище даних, то адаптер даних (разом з набором операторів SQL) задіюється для оновлення даних - при цьому підключення відкривається заново для проведення оновлень в базі, а потім відразу ж закривається.
  • 12. Andrey Gladky KspDevelop@gmail.com 12 Концепція інтерфейсів і базових класів ADO.NET
  • 13. Інтерфейси ADO.NET Andrey Gladky KspDevelop@gmail.com 13 Інтерфейс Опис IDbConnection IDbConnection реалізований об'єктом підключення постачальника даних. Цей інтерфейс визначає набір членів, які застосовуються для налаштування підключення до конкретного сховища даних, а, крім того, дозволяє отримати об'єкт транзакції постачальника даних.. IDbTransaction Перевантажений метод BeginTransaction(), визначений в інтерфейсі IDbConnection, щоб перейти до вибору об'єкту транзакції постачальника. Члени, визначені в IDbTransaction, дозволяють програмним чином взаємодіяти з сеансом транзакцій і відповідним сховищем даних: IDbCommand Як і інші об'єктні моделі доступу до даних, об'єкти команди дозволяють програмно працювати з операторами SQL, збереженими процедурами і параметризованих запитами. Крім того, об'єкти команди забезпечують доступ до типу читання даних постачальника даних за допомогою перевантаженого методу ExecuteReader ():
  • 14. Інтерфейси ADO.NET Andrey Gladky KspDevelop@gmail.com 14 Інтерфейс Опис IDbDataParameter і IDataParameter Властивість Parameters інтерфейсу IDbCommand повертає строго типізовану колекцію, яка реалізує IDataParameterCollection. Цей інтерфейс надає доступ до набору класів, сумісних з IDbDataParameter (об'єкти параметрів) DataReader і IDataRecord IDataReader, який представляє загальну поведінку, яка підтримується конкретним об'єктом читання даних. Отримавши від постачальника даних ADO.NET тип, сумісний з IDataReader, ви зможете виконувати прохід за результуючого набору тільки в прямому напрямку тільки для читання.
  • 15. Основні об’єкти провайдерів даних ADO.NET Andrey Gladky KspDevelop@gmail.com 15 Object Опис Connection Встановлює з'єднання з конкретним джерелом даних. Базовим класом для всіх об'єктів Connection є DbConnection. Command Виконує команду в джерелі даних. Забезпечує доступність Parameters і може виконувати команди в області Transaction з Connection. Базовим класом для всіх об'єктів Command є DbCommand. DataReader Зчитує з джерела даних однопрохідний потік даних тільки для читання. Базовим класом для всіх об'єктів DataReader є DbDataReader. DataAdapter Заповнює DataSet і виконує оновлення в джерелі даних. Базовим класом для всіх об'єктів DataAdapter є DbDataAdapter.