Studopediya

КАТЕГОРИЯ:


Астрономия- (809) Биология- (7483) Биотехнологии- (1457) Военное дело- (14632) Высокие технологии- (1363) География- (913) Геология- (1438) Государство- (451) Демография- (1065) Дом- (47672) Журналистика и СМИ- (912) Изобретательство- (14524) Иностранные языки- (4268) Информатика- (17799) Искусство- (1338) История- (13644) Компьютеры- (11121) Косметика- (55) Кулинария- (373) Культура- (8427) Лингвистика- (374) Литература- (1642) Маркетинг- (23702) Математика- (16968) Машиностроение- (1700) Медицина- (12668) Менеджмент- (24684) Механика- (15423) Науковедение- (506) Образование- (11852) Охрана труда- (3308) Педагогика- (5571) Полиграфия- (1312) Политика- (7869) Право- (5454) Приборостроение- (1369) Программирование- (2801) Производство- (97182) Промышленность- (8706) Психология- (18388) Религия- (3217) Связь- (10668) Сельское хозяйство- (299) Социология- (6455) Спорт- (42831) Строительство- (4793) Торговля- (5050) Транспорт- (2929) Туризм- (1568) Физика- (3942) Философия- (17015) Финансы- (26596) Химия- (22929) Экология- (12095) Экономика- (9961) Электроника- (8441) Электротехника- (4623) Энергетика- (12629) Юриспруденция- (1492) Ядерная техника- (1748) Arhitektura- (3434) Astronomiya- (809) Biologiya- (7483) Biotehnologii- (1457) Военни бизнесмен (14632) Висока technologies- (1363) Geografiya- (913) Geologiya- (1438) на държавата (451) Demografiya- ( 1065) Къща- (47672) журналистика и смирен (912) Izobretatelstvo- (14524) външен >(4268) Informatika- (17799) Iskusstvo- (1338) историята е (13644) Компютри- (11,121) Kosmetika- (55) Kulinariya- (373) културата е (8427) Lingvistika- (374) Literatura- (1642) маркетинг-(23702) математиците на (16968) Механична инженерно (1700) медицина-(12668) Management- (24684) Mehanika- (15423) Naukovedenie- (506) образователна (11852) truda- сигурност (3308) Pedagogika- (5571) Poligrafiya- (1312) Politika- (7869) Лево- (5454) Priborostroenie- (1369) Programmirovanie- (2801) производствено (97 182 ) индустрия- (8706) Psihologiya- (18388) Religiya- (3217) Svyaz (10668) Agriculture- (299) Sotsiologiya- (6455) на (42831) спортист строително (4793) Torgovlya- (5050) транспорт ( 2929) Turizm- (1568) физик (3942) Filosofiya- (17015) Finansy- (26596) химия (22929) Ekologiya- (12095) Ekonomika- (9961) Electronics- (8441) Elektrotehnika- (4623) Мощност инженерно ( 12629) Yurisprudentsiya- (1492) ядрена technics- (1748)

Три страни на ADO.NET технологии

ADO.NET Library (.NET версия 3.5 и по-горе) може да се използва в три концептуално различни начини: в свързан (свързана) режим, офлайн и използване Entity Framework технологии. .NET Версия 2.0 се използват само първите два начина на взаимодействие.

При използване на свързаното ниво (свързан слой), на база код е ясно свързан с едноименния съхранение на данни и изключен от него. По този начин, използването на ADO.NET обикновено е взаимодействието с хранилището на данни чрез свързване на обекти, командни обекти и четат информационни обекти.

Автономна ниво (изключен слой), позволява да се работи с набор от обекти DataTable (съдържащи се в обекта DataSet), който е от страната на клиента копие на външните данни. Когато един DataSet с връзка на подходящи данни адаптер обекта се отваря и затваря автоматично. Ясно е, че този подход помага за бързо освобождаване на връзката за други разговори и подобрява системата за скалируемост.

След получаване на DataSet обекта, на повикващия може да видите и манипулира данни, без разходите за мрежовия трафик. А ако искате да се въвеждат промени в хранилището на данни, адаптер за данни се активира, за да актуализира данните, и връзката се отворят отново за актуализации в базата данни, и веднага след това затвори.

След освобождаването на .NET 3.5 SP1 добавя поддръжка за ADO.NET в нови технологии (нови API функции), който се нарича Entity рамка (съкращение EF). EF Technology показва, че много подробности за работа с бази данни, скрити от програмист на ниско ниво и се практикува за него в създаването на съответната LINQ-анкетата. Технология LINQ разгледа в края на субектите на изследването.

2.3 System.Data пространство от имена. От гледна точка на програмист на, ADO.NET тяло на основата монтаж на име System.Data.dll. Това двоичен файл е значителен брой видове, които се споделят от всички доставчици на ADO.NET данни, независимо от базовия тип магазин данни. Приложните програми, които позволяват на потребителите да обменят данни, ADO.NET могат да използват, за да се свържете към източниците на данни, както и да се търсят, контрол и променят данните.

По този начин, ADO.NET - е част от рамката на Microsoft .NET, т.е. набор от инструменти и слоеве, което позволява на приложението да лесно да управлявате и да си взаимодействат с вашия файлов сървър или склад за данни:

3.1 ADO.NET доставчици на данни. ADO.NET не осигурява единен набор от видове, за да комуникира с всички по-големи бази данни. Вместо това, има различни ADO.NET доставчици на данни (данни ISPs - доставчикът на данни), всеки оптимизиран за специфични взаимодействия с СУБД. Първото предимство на този подход е, че можете да програмирате специален доставчик на данни за достъп до уникалните възможности на дадена СУБД. Друга полза - определен доставчик на данни може да се свърже директно към механизма на съответната база данни, без да използвате mezhduurovnevym дисплей слой.



В първо приближение, доставчикът на данни може да се разглежда като съвкупност от видове, определени в пространството от имена, които е предназначена да взаимодейства с определен източник на данни. Въпреки това, независимо от доставчика на данни, като всеки от тях определя набор от класове, които осигуряват основната функционалност. В действителност, доставчикът на данни - мост между прилагането и източника на данни.

Една от основните идеи, залегнали модел на ADO.NET доставчик е скалируемост. С други думи, разработчиците могат да създават персонализирани доставчици за патентовани източници на данни. В действителност, много подкрепа това е налице примери, които показват как да създадете потребителски ADO.NET доставчици, които служат като опаковки за магазините не-релационни данни, като файловата система или директория услугата. Някои независими производители също продават свои собствени доставчици на данни за ADO.NET.

Като част от рамката за .NET идва с набор от доставчици на данни, като например доставчика в стила на Oracle, Microsoft SQL Server и OLE DB / ODBC (Фигура 1.)

Фигура 1 - Нива на доставчик на данни модел

Доставчик SQL Server.NET Data Provider предвижда опростена достъп до базата данни на Microsoft SQL Server (версия 7.0 и по-висока) и комуникира с него директно от "родните" данни протокол за трансфер на SQL Server. Той се намира в пространството от имена System.Data.SqlClient. Доставчикът на OLE DB ви дава достъп до всеки източник на данни, която има OLE DB шофьор. Това включва версии на SQL Database Server преди 7.0. Той се намира в пространството System.Data.OleDb пространство от имена. Oracle доставчик осигурява оптимизирано достъп до базите данни на Oracle (версия 8 и по-горе).

Забележка. Ако вашето приложение работи с база данни Microsoft Access, трябва да се свържете на следните директиви на пространство от имена:

използване System.Data;

използване System.Data.OleDb;

Ако вашето приложение работи с база данни Microsoft SQL Server, трябва да се свържете на следните директиви на пространство от имена:

използване System.Data;

използване System.Data.SqlClient;

При избора на доставчик, трябва първо да се опита да намери вграден доставчик ADO.NET, която е предназначена за съществуващ източник на данни. Ако това не е намерена, можете да използвате OLE DB с OLE DB шофьор на разположение за източника на данни.

Всеки използва доставчик на данни определя набор от видове, които осигуряват основната функционалност. Основни съоръжения ADO.NET доставчик на данни, техните основни класове са определени в имената System.Data.Common:

Тип на имота Базовия клас Реализирани интерфейси мащаб уговорена среща
връзка SqlConnection DbConnection OracleConnection IDbConnection Connection обект. Тя ви позволява да се свържете към хранилището на данни и да се изключите от него. Освен това, обектите за свързване позволяват достъп до съответните сделки.
команда DbCommand SqlCommand IDbCommand Обектът на команда. Той представлява SQL-заявка или съхранена процедура. В допълнение, командни обекти осигуряват достъп до четец на данни обект на определен доставчик на данни.
DataReader DbDataReader IDataReader, IDataRecorder Прочети обект на данни. Тя осигурява еднопосочна достъп до данните само за четене от страна на сървъра.
DataAdapter DbDataAdapter SqlDataAdapter, OracleDataAdapter IDataAdapter, IDbDataAdapter Object Adapter данни. Нападатели набори от данни от склада на данни за процеса на разговори, както и обратното. адаптери данни предоставят свързаност и набор от четири вътрешни командни обекти за извличане, вмъкване, обновяване и изтриване на информация в склада за данни.
параметър DbParameter SqlParametrs IDataParameter, IDbDataParameter Параметър обект. Той представлява име параметър в параметризирана заявка.
транзакция DbTransaction SqlTransaction IDbTransaction Обект на сделката. Извършва сделка база данни.

Въпреки, че съответните видове наименования за различни доставчици на данни са различни (например, DbDataAdapter, SqlDataAdapter, OracleDataAdapter), всеки един от тези обекти се получава от един и същ базов клас, което предполага идентичност с тях.

3.2 Поведение връзка обекти. Необходимостта да се свърже към източник на данни е много важно за всеки архитектура достъп до данни. ADO.NET ви позволява да организирате връзката с източника на данни с помощта на подходяща връзка обект, който е част от съответния доставчик на данни.

За да отворите връзка, трябва да се определи каква информация е необходима - например, името на сървъра, потребителското име, парола и т.н. Както всяка мишена може да се наложи да свържете източника на определен набор от информация, която позволява на ADO.NET за да се свържете към източник на данни, изберете гъвкав механизъм за уточняване на всички параметри чрез низ връзка.

низ връзка съдържа елементите, с минимална информация, необходима за установяване връзки под формата на поредица от двойки ключ-стойност. Различни двойки ключ-стойност в низ връзка могат да определят някои конфигурируеми параметри, които определят поведението на връзката. Самият връзка обект източник на данни е наследен от класа на SqlConnection и получава готов логика осъществява в базови класове.

Заявлението трябва да споделят скъп ресурс - отворена връзка, и да го споделите с други потребители. Тя е за тази цел и басейна на връзката е била въведена. По подразбиране, пул за връзки е включен. Когато заявката ADO.NET имплицитно проверява дали има налични неизползвани физическа връзка с базата данни. Ако съществува такава връзка, то тя използва. За да се реши дали е налице физическа връзка или не, ADO. NET заявление дава възможност за сваляне, и ако се подава твърде много едновременни заявки, на АДО. NET може да побере едновременно отворени множество физически връзки, тоест, да се увеличи броят на връзките, ако е необходимо. Ако се вгледате в една картина в подробности, ситуацията е както следва:

Под клас SqlConnection има брокер, управление на басейна на отворени връзки. Той е отговорен за увеличението или намалението в действителния брой на отворени връзки, в зависимост от изискванията на приложението. За всеки клас поиска брокер връзка е еднозначно идентифицирани от съответна низ връзка. Ето защо, когато дадено приложение изисква всяка отворена връзка към една и съща база данни, тя изглежда в началото на вътрешния обединяването на кеш връзка, и ако го има на разположение връзка, тя се използва. При липса на валидна връзка, създадена нова че и премина към заявлението.

4. Обект Модел ADO.NET. Броени свързаните приложения не отговарят на всички изисквания за модерни разпределени приложения. В самостоятелни приложения, създадени с помощта на ADO.NET, използвайте по-различен подход. DataAdapter обекти се използват за да се гарантира автономия. Те извършват заявки посредством обекти за връзка. резултати представление, т.е. данните, предавани автономни обекти.

С този принцип автономни обекти не са наясно за съществуването на връзка предмети като не директно действат върху. По този начин, прилагането на обект, който съхранява данни, които не зависи от определен доставчик на данни, а именно от базата данни. Поради специфичното прилагане на адаптера на данни зависи от съответния източник на данни адаптери конкретни данни се изпълняват като част от конкретен доставчик.

Самостоятелни приложения обикновено се свързват с базата данни възможно най-късно и от възможно най-рано. Важен елемент в тази схема на свързване и офлайн достъп до данни е контейнер за таблични данни, които не знаят за базата данни. Такава невежи на самостоятелен контейнер база данни за таблични данни, представени в ADO .NET библиотека клас DataSet или DataTable.

Object Model ADO .NET е представена по-долу:

Object Model ADO .NET предполага съществуването (когато заявлението е писмено да работи с базата данни - използване) на две групи от класове, които функционират ясно определени задачи при работа с базата данни (Фигура 2.).

Фигура 2. - ADO.NET класове

Уроци свързани обекти осигуряват връзка с управлението на базата данни и база данни от заявлението. Уроци самостоятелни обекти осигуряват опазването, използването и трансформирането получена от базата данни на информация от страна на заявлението.

По този начин, ADO.NET архитектура могат да бъдат разделени на две основни части: кука и автономна. Всички класове в ADO.NET могат да бъдат разделени според този критерий. Единственото изключение - класа на DataAdapter, който е посредник между свързани и несвързани части ADO.NET.

Преглед на обекти ADO .NET:

DataSet източник на данни. Това е специализирана база данни обект-образ, който е локално копие на произволен брой взаимосвързани таблици с данни. DataSet клас е в основата на онлайн достъп до данни в ADO.NET. Най-добре е то да се разглежда от гледна точка като че ли има своя собствена малка база данни изцяло в паметта.

DataSet се състои от обекти, като например DataTable и DataRelation обекти. В кода, те могат да бъдат третирани като свойствата на набор от данни. Маси DataTableCollection имот връща обект от тип, който съдържа всички DataTable обекти използват база данни.

В таблиците и полетата (DataTable обекти и DataColumn). DataTable обекти се използват за представяне на една от таблиците в базата данни в данните. От своя страна, се състои от DataTable DataColumn обекти. DataColumn - блок за създаване DataTable верига. Всеки DataColumn обект има тип данни имот, който определя вида на данните, които се съдържат във всеки обект DataColumn. Например, типът на данните може да бъде цяло число, данни струнни и логически данни и т.н. Тъй като данните, които се съдържат в DataTable, обикновено прехвърлят обратно към оригиналния източник на данните, необходими за да се координира от вида на източника на данни.

Strings (DataRow обект). Редове събиране на DataTable връща набор редове (записи) на дадена таблица. Тази колекция се използва за проучване на резултатите от заявката към базата данни. Ние може да получите достъп до записите на една маса като елементите на един прост масив.

Object DataRelation. В този клас се дава възможност да се определят връзките между различни таблици, които можете да използвате, за да се провери съответствието на данните от различни таблици. Наборът от данни има връзки с имот, който се връща колекция от DataRelationCollection, което от своя страна се състои от DataRelation обекти. Всеки обект DataRelation изразява връзка между две таблици (таблици обвързани със всяко поле (колона)). Следователно, тази комуникация се осъществява чрез обекта DataColumn.

Object DataAdapter. За осъществяване на взаимодействието между DataSet и на източника на данните, тип на DataAdapter. Името на обекта - един конвертор адаптер - показва своята същност. DataAdapter съдържа Update () и Fill (), за да актуализирате данните от база данни и да запълни обекта DataSet.Mozhno използват четири обекта команди, за да получавате актуализации: UpdateCommand, InsertCommand, DeleteCommand, и SelectCommand.

Следващата фигура показва използването на SQLDataAdapter обект за прехвърляне на данни между база данни SQL Server и обекта DataSet:

DataView. Тя е концепции обект на база данни, която осигурява персонализиран изглед за DataTable помощта на сортиране, филтриране, търсене, редактиране, и навигацията. Това отличава обекта от Изберете метод на DataTable, който връща масив от DataRow от масата, както и съдържанието на която отразява промените в основната таблица, но състава и подредбата остават непроменени. Динамични способности DataView го правят идеален за приложения в задължителни данни.

5. Свързване интерфейси, сделка, адаптери данни команда, четене на данни. Базови именно пространство System.Data интерфейси определят обща платформа, която предлага всички доставчици.

В System.Data.Common именно пространство определя от набор от абстрактни типове, които осигуряват по-общ интерфейс за всички доставчици на управлявани услуги. Всички доставчици на управлявани услуги изпълняват IDbConnection интерфейс, който се използва, за да изберете и да се свържете с откриването на източника на данни. Видове, които прилагат различен интерфейс - IDbCommand, се използват за извършване на SQL-заявки към бази данни. IDataReader интерфейс осигурява четене на данни с помощта на еднопосочен курсора е само за четене. Видове, които прилагат IDbOataAdapter, отговорни за запълване на DataSet с данни от база данни.

Така че, IDbConnection интерфейс се реализира от връзката на обект доставчик на данни. Този интерфейс определя набор от членове, които се използват за конфигуриране на свързване към конкретен магазин на данни (например, имот за струнен ConnectionSrting низ връзка), и също така ви позволява да получавате сделка доставчик на данни обект. Претоварени методи IdbTransaction BeginTransaction () и IdbTransaction BeginTransaction (IL ниво на изолация), дефинирани в IDbConnection интерфейс осигуряват достъп до обекти, предоставящи данни за транзакциите.

Connection Connection обект. Обекти връзка се използва за комуникация с бази данни. Те притежават свойства, като например DataSource, UserID и парола, които са необходими, за да получите достъп до източника на данни. Командите се движеха над връзката, и се връщат в резултат определя под формата на конци, които могат да се четат или поставени в DataReaders набор от данни обекти. Има два вида на свързване на обекти в ADO.NET: SqlConnection и OleDbConnection.

Обекти командване. Command обекти съдържат информация, която се прехвърля в базата данни. Тази команда може да се запише като извикване на процедура, актуализации на оператора или изявление, че се връща резултати. Можете да използвате и на входните и изходните параметри и да се върне стойности. Могат да се използват два вида ADO.NET командни обекти: SqlCommand и OleDbCommand.

Обекти DataReader. DataReader - е един вид синоним на представителство само за четене / само на предадените данни. Софтуер интерфейс DataReader поддържа йерархични данни. DataReader обект се връща след изпълнение на командата в базата данни. Например, можете да използвате DataReader, за да видите списък с резултати от търсене на уеб страницата. ADO.NET включва два вида обекти DataReader: SqlDataReader за Microsoft SQL Server база данни версия 7.0 (или по-късно), и OleDbDataReader за данни ADO. DataReader обект е отделна база данни. SqlDataReader поведение може да се различава от OleDbDataReader на поведение. За прехвърляне на данни в DataReader обекти се използват OleDbCommand или SqlCommand и метод ExecuteReader.

<== Предишна лекция | На следващата лекция ==>
| Три страни на ADO.NET технологии

; Дата: 01.13.2014; ; Прегледи: 199; Нарушаването на авторските права? ;


Ние ценим Вашето мнение! Беше ли полезна публикуван материал? Да | не



ТЪРСЕНЕ:


Вижте също:



zdes-stroika.ru - Studopediya (2013 - 2017) на година. Тя не е автор на материали, и дава на студентите с безплатно образование и използва! Най-новото допълнение , Al IP: 66.102.9.22
Page генерирана за: 0.054 сек.