Базы данных — это системы взаимосвязанных данных, единство и целостность которых осуществляются при помощи специальных программных средств.
Введение
Пакет программ операционной системы Windows Mobile, который способен превратить карманный персональный компьютер в Pocket PC, обладает целым набором отличных встроенных программных приложений, некоторые из которых пользователю могут и не потребоваться, а некоторые, являющиеся насущной необходимостью, могут вообще отсутствовать. К последним могут быть отнесены программы баз данных, предметная сфера которых имеет такие большие размеры, что нет особого смысла дополнять состав операционной системы такими приложениями.
В настольных компьютерах предусматриваются пакеты программ для работы с базами данных, но программирование этой сферы в карманных персональных компьютерах изначально подвергалось сомнению. Причем не столько из-за мощности самих аппаратов, сколько из-за сомнений в достаточности эргономики такого рабочего места. Хотя следует отметить, что выполняется программирование SmartDevice на настольных компьютерах, а далее откомпилированные варианты могут быть установлены на карманные персональные компьютеры.
Но тут существует проблема соответствия вариантов настольного системного программного обеспечения и карманных персональных компьютеров. Однако тут следует заметить, что в карманном варианте Microsoft предлагает новую технологию доступа к данным, которая называется ADO.NET.
Базы данных для карманного персонального компьютера
ADO.NET осуществляет разделение доступа к данным и операции с ними. Соединенные классы, которые предоставляют поставщики данных ADO.NET, могут обеспечить соединение с источником данных, выполнение команд и считывание результатов.
Отсоединенные классы дают возможность обращения к данным и осуществления манипуляций с ними в автономном режиме, а потом синхронизировать внесённые коррекции с выбранным источником данных. В добавок ко всему, XML, который тесно интегрирован в ADO.NET, позволяет загружать данные, выполнять обращение к ним и манипулирование ими, применяя одновременно и XML, и отсоединенные классы.
Технология ADO.NET служит для обеспечения доступа к данным в слабосвязанных n-уровневых архитектурах приложений, в том числе и веб службы. ADO.NET предоставляет возможность обращения к различным источникам данных, таким как базы данных разных поставщиков (MS SQL Server, Oracle, MS Access), а также и к другим источникам данных (MS Excel, Outlook, текстовые файлы). Для программирования баз данных SmartDevice, которые имеют по определению ограниченную функциональность, лучше всего подходят текстовые форматы данных и данные отсоединенных наборов (DataSet). Совокупность данных может не содержать информации об источнике данных, из которого он заполнялся. В итоге можно сохранять набор данных в виде XML-документа и заполнять его данными как из XML-документов, так и из текстовых файлов. Однако при этом, каждый поставщик данных должен предоставлять следующие отсоединенные классы:
- Connection, который является уникальным сеансом подключения к источнику данных.
- Command, который содержит команды выполнения SQL-операторов и процедур обработки данных.
- DataReader, который обеспечивает последовательный доступ чтения потока результата запроса.
- DataAdapter, который является наполнителем отсоединенного набора (DataSet) и редактором источника данных согласно изменениям, осуществлённым в отсоединенном наборе
Есть разные мнения относительно важности XML в проектировании программного обеспечения. Корпорация Microsoft реализовала собственную стратегию NET, которая направлена на применение XML и Web-служб в качестве «прослойки», предоставляющей такое взаимодействие между фирмами, которое не зависит от применяемых в них операционных систем и механизмов хранения данных.
Поскольку XML является типом данных, a ADO.NET является механизмом работы с данными в .NET, тот очевидно, что ADO.NET должен поддерживать работу с XML-документами наравне с остальными данными. С этой точки зрения, библиотека ADO.NET может считаться обладающей тесной интеграцией с инфраструктурой XML .NET.
Стратегию Microsoft в отношении XML и ADO.NET следует рассматривать с точки зрения следующих аспектов:
- Microsoft хочет предоставить такой же инструментальный набор для доступа к XML-содержимому, который применяется для доступа к информации, находящейся в базе данных.
- Microsoft стремится предоставить в ADO.NET средства преобразования информации базы данных в формат XML. Следует заметить, что название ADO.NET не является полностью корректным, поскольку ADO.NET не может считаться прямым «наследником» ADO.
Так как ADO.NET представляет собой всего лишь механизм обработки данных в .NET, то справедливым может считаться утверждение, что XML является просто еще одним форматом данных.
Во времена ADO/OLE DB для информационной обработки из некоего источника данных (к примеру, из базы данных) нужно было сформировать поставщик OLE DB, который считается достаточно сложным и запутанным. В .NET для доступа к данным из источника, который отличается от базы данных, требуется или сформировать управляемого поставщика, или воспользоваться наличием тесной интеграции ADO.NET с XML.
Ядром данной интеграции является класс DataSet. Имеется возможность загрузки данных и схемы из XML-потока или документа в объект DataSet и наоборот, возможность сохранения данных или схем из объекта DataSet в XML-поток или документ. ADO синхронизирует объект DataSet с объектом XmlDataDocument. Имеется также возможность одновременной модификации данных, применяя любой из классов. При этом все изменения, осуществлённые с помощью одного из классов, оперативно отображаются в другом классе.