Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
база данных.docx
Скачиваний:
167
Добавлен:
24.03.2015
Размер:
5.83 Mб
Скачать

9.4. Характеристика технологии ado.Net

В этом подразделе рассматривается технология доступа к данным ADO.NET, указаны ее преимущества по сравнению с предыдущей технологи­ей ADO, а также дана характеристика ее объектной модели. Технология ADO.NET является развитием технологии доступа к данным ADO и входит составной частью a Microsoft .NET.

Характеристика Microsoft .NET

Соответственно, возникает вопрос, что представ тяет собой сама Microsoft .NET. Прежде всего, это новый подход к разработке приложений, при кото­ром разработчику, как правило, не нужно самостоятельно писать код, опреде­ляющий его функциональность. Вместо этого разработчику достаточно вос­пользоваться соответствующей службой (сервисом) сети Интернет. В состав Microsoft .NET входят следующие основные компоненты: библиотека клас­сов .NET: я?ыки .NET; общая языковая среда исполнения (CLR), интегриро­ванная среда разработки приложений, например, Visia) Studio .NET. Дадим краткую характеристику названным компонентам:

  • Библиотека классов .NET включает множество шаблонов для использо вания их в различных приложениях. Любой язык .NET может использо­вать возможности этой библиотеки, взаимодействуя с соответствующим набором объектов.

  • Common Language Runtime (CLR) — общеязыковам исполняющая сре­да, обеспечивающая единообразный доступ к сервисам Microsoft .NET. Основной задачей CLR является загрузка и выполнение кода, написан­ного на любом языке программирования, поддерживаемом в Microsoft .NET. В настоящее время поддерживают ся языки Visual Basic, С++, С#, JScript из состава продуктов фирмы Microsoft, а также языки других фирм, в числе которых COBOL, Eiffel, Oberon, Perl, SmallTalk и др.

Технология ADO.NET

ADO.NET (ActiveX Data Object.NET) - набор классов, используемый для доступа к источникам данныл в платформе .NET. ADO.NET представляет со­бой ноьую объектную > модель, которая использует стандарт ХМ L для передачи данных. В ADO.NET реализована идея использования orrn oedime.ltiux наборов данных, причем такой способ работы является основным. По сравнению с ADO, ADO.NET предполагает более легкое программирование, .'(учшую производи­тельность и масштабирование, меньшую зависимость от источников данш ix.

ADO.NET можно использовать для доступа к реляционным СУБД, таким как SQL Server 2000, и ко многим дополнительным источникам данных, для работы с которыми предназначен провайдер OLE DB.

Одно из ключевых новшеств ADO.NET замена А1 )0-объекта RecordSet комбинацией объектов DataTable, DataSet, DataAdapter и DataReader. Объект DataTable представляет набор (collect ion) записей отдельной табли­цы и в этом отношении аналогичен RecordSet. Объект DataSet представляет набор объектоь DataTable, а также содержит отношения и ограничения, ис­пользуемые при связывании табпиц. На самом деле DataSet — это хранящая ся в памя ги ре. шционнач структура данных со встроенной поддержкой XML.

В ADO.NET поддержка реляционной модели осуществляется двумя спо­собами. Первый способ реализует подсоединенную модель дост упа к данным, в которой функционирз ют стандартные методы доступа к реляционной базе данных, включая поддержку параметрических запросов, хранимых процедур, SQL операторов пакетного выполнения и транзакций. Этот способ полнос­тью аналогичен способам, применяющимся в известных интерфейсах досту­па к данным, таких, как OLE DB, ODBC, JDBC.

Г) ри втором способе доступ к данным осуществляется в отсоединенном режиме с помощью объекта DataSet, имитирующего базу данных. 11ад дан­ными, содержащимися в этом объекте применимы все операции, характер ные для баз данных. Объект DataSet может содержать любое количество реляционных таблиц, отношений и ограничений и даже позволяет полу­чать подмножество таблиц с помощью SQL-подобного языка запросов Кроме того, в отсоединенную модель входит объект DataAdapter, который играет роль связующего класса между реальной базой данных и объектом DataSet.

Преимущества ADO.NET

Технология ADO.NET создана для использования в управляемых проек­тах. Предыдущая технология ADO основана на технологии СОМ н при ис­пользовании из управляемых приложений требует дополнительных затрат на выполнение кода. К тому же ADO имеет меньшие возможности при рабо­те с отключенными наборами данных и XML. Например, в ADO непросто сохранить изменения, произведенные в отключенном курсоре. Рассмотрим некоторые преимущества ADO.NET в сравнении с ADO.

Масштабируемость. При использовании объекта DataSet работа проис­ходит с отсоединенными наборами данных. Это означает, что вы используете соединение с источником данных очень короткое время. Во многих сист емах количество подключений к базам данных является самым узким местом в плане масштабируемости. Для таких систем ADO.NET является хорошим решением, резко повышающим их масштабируемость.

Независимость от источника данных. В ADO возможности объекта RecordSet сильно заьисели от используемого источника данных. Теоретичес­ки ADO обеспечива i доступ к данным независимо от источника данныу, на практике всегда необходимо было иметь хорошее представление о возмож ностях провайдера. В А DO.NET DataSct действительно не зависим от источ ника данных, и изменение провайдера, с помощью которого заполняется DataSet, не влияет на функциональность DataSet:.

Способность к взаимодействию. Так как ADO.NET использует XML как стандартный формат передачи данных, программа, кот орой необходимо по­лучить данные из компонент а ADO.NET, не обязана сама быть компонентом ADO.NET. В общем случае она вообще может не быть Windows-iiDOi раммой. Единственное требование - эта программа должна понимать XML. И это по­зволяет ADO.NE1 -компонентам при использовании других Компонентов и служб легко взаимодействовать с любой программой на любой платформе.

Компоненты ADO.NET

Компонент ы AI JO.NET существуют в пяти главных пространствах имен в библиотеке классов .NET. Укажем назначение этих пространств имен.

System.Data • содержит фундаментальные классы с базовой функциональ ностью ADO.NET. В их число входят классы DataSet и DataRelation, которые позволяют манипулировать структурированными реляционными данными.

System.Data.Common - эти классы применяются другими классами в про странствах имен System.Data.SqiClient и System.Data.OleDb, которые явля ютея их нас ледниками и предоставляют конкре тные версии, настроенные для поставщиков SQL Server и OLE DB.

System.Data.OleDb - содержат классы, которые используются для соеди нения с поставщиком OLE DB. включая OleDbCommand и OlcDbConnection.

System.Data.SqlCJient - содержит классы, которые используются для со­единения с базой данных Microsoft SQL Server. Эти классы предоставляют такие же свойства и методы аналогично классам из System.Data OleDb. От­личие состоит в том, что они оптимизированы для SQL Server.

System.Data.,SqlTypes - содержит структуры для специфических типов данных SQL Server, например, SqIMoney и SqlDateTime. Эти типы не явля ются обязат ельными и используются для работы с типами данных SQL Server без необходимости конвертировать их в стандартные эквиваленты NET. Ис­пользование таких структур позволяет увеличить производительность обме­на данными за счет устранения автоматического преобразования данных.

Объекты ADO.NET

Базовые объекты ADO.NET можно разбить на две группы: первая исполь­зуется для хранения и управлениями данными (классы DataSet, DataTahle, DataRow и DataRelation), bti >рая группа - для обеспечения соединения с ис­точниками данных (классы Connections, Commands и DataReader). Объек ты ADO.NET второй группы существуют в двух видах: для связи с поставщи­ками OLE DB и для взаимодействия с SQL Server.

Объекты данных позволяют хранит ь локальные данные, не имеющие свя­зи с источником. Кроме того, они не хранят соединение с источником данных и. следовательно, их можно создавать самостоятельно, не используя базу дан­ных. Объект DataSet не имеет непосредственного соединения с источником данных и его можно создавать без обращения к базе данных.

Схема доступа к данным

Одна из схем доступа к данным с помощью AD( ).NET представлена на рис. 9.3. Необход] [мая пользователю информация находится в базе данных. Обра­батываемые данные размещаются в объекте DataSet, не имеющем соединения с источником данных. Тем самым достигается возможность работы с данными в течение длите 1ьного промежутка времени. ] 1а рис. 9.3 серым цветом под пун­ктирной линией для наглядности выделены не подсоединенные объекты.

Рис. 9.3. Схема доступа к данным с помощью ADO NET

В заключение отметим, что технология ADO.NET представляет собой кон­цепцию универса тьного доступа к данным, которую можно определить как распределенное хранение данных и уппавление ими.

Контрольные вопросы и задания

  1. Охарактеризуйте подход к выбору СУБД.

  2. Назовите основные показатели пригодности программных продуктов.

  3. Перечислите показатели пригодности СУБД.

  4. Прив< дите примеры основных технических характ< ристик СУБД.

  5. Назовите основные виды тестов, используемых для оценки произво­дительности.

  6. Назовите состав вопросов, связгнных с определением структуры про­граммно-аппаратного обеспечения.

  7. Укажите факторы, которые нужно учитывать при выборе сеовера ин­формационной системы.

  8. Как определяется размер основной памяти компьютера для серверной части информационной системы?

  9. Укажите эмпирические правила для определения размера кэша.

  10. Что учи гывают при подборе дисковой системы ввода/вывода?

  11. Укажите разновидности сильносвязанных вычислительных систем.

  12. Охарактеризуйте слабосвязанные вычислительные системы.

  13. Назовите методы распараллеливания обработки данных.

  14. Перечислите возможные направления развития СУБД.

  15. Дайте общую характеристику процесса стандартизации.

16: Перечислите стандарты языка SQL и дайте краткую их характеристику.

    1. Каково назначение стандарта < )DMG-93?

    2. Охарактеризуйте технологию CORBA.

    3. Назовите стандарты, используемые в продуктах фирм IBM, Microsoft и Borland.

    4. Укажите основные компоненты Microsoft .NET.

    5. В чем заключаются достоинства ADO.NET?

    6. Охар (ктеризуйте схему доступа к данным с помощью ADO.NET.

Литература

      1. Волков А. А. Тесты ТРС// Системы Управления Базами Данных № 2,1995. С. 70-78.

      2. Базы данных: достижения и перспективы на пороге 21-го столетия / Под ред Ави Зильбершатца, Майкла Стоунбрейкера и Джеффа Ульмана // Системы Управления Базами Данных. М 3,19Р6. С. 103-117

      3. Дейт К. Дж Введение в системы баз данных. I [ер. с англ. 6-е изд. К.: Диалек­тика. 1998.

      4. Дэвгтт Т.. ГрейД Параллельные системы баз данных: будущее высокоэффек­тивных систем баз данных // Системы Управления Базами Данных. № 2,1995. С 8-31.

      5. Калинин< нкп Б. О. Асинхронное тиражирование данных в гетерогенных сре­дах // Системы Управления Базами Данных, № 3,1996. С. 118 -124.

      6. Меллиш. В. П. Корпоративные информационные архитектуры: и все-таки они меняются // Системы Управления Базами Данных, № 2,1995. С. 45-59.

      7. Михайлов М. СУБД нового поколения // КомпьютерПресс, № 11, 1990. С. 25 30,79.

      8. Орфс nv Р., ХаркиД, Эдварде Д. Основы CORBA: Пер. с англ. М.: МАЛИП, Горячая линия - Телеком, 1999.

      9. Роберт Сигнор, Михаэль О. Стегчан. Использование ODBC для доступа к ба­зам данных: Пер. с англ. М.: БИПОМ; НАУЧНАЯ КНИГА.

      10. Системы управ, гения базами данных и знаний: Справ, изд. / Наумов А. Н., Вен- дрив А. М., Иванов В. К. и др.; Под ред. А. Н. Наумова. М.: Финансы и стати­стика, 1991.

      11. Шнит чан В. 3., Кузнецов С. Д. Серверы корпоративных баз данных. И нформа­ционно-аналитические материалы Центра Информационных Технологий, http:\\www .г itforu m ru.

      12. ПросизД. Программирование для Microsoft .NF.T /Пер. с англ. - М : Издатель- ско-торговый дом «Русская редакция», 2003. - 704 с.

СОВРЕМЕННЫЕ СУБД И ИХ ПРИМЕНЕНИЕ

10. СУБД Access 2002