Технология Microsoft ADO .NET
Покупка
Новинка
Тематика:
Программирование на C и C++
Издательство:
ИНТУИТ
Автор:
Кариев Чингиз Алишерович
Год издания: 2016
Кол-во страниц: 490
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-94774-679-2
Артикул: 837480.01.99
Рассматривается использование технологии ADO.NET для взаимодействия с базами данных Microsoft SQL Server 2000 и Microsoft Access, а также библиотекой .NET Framework. Более 90 готовых примеров на языке Visual C#, доступных для скачивания, позволят освоить практические методы решения наиболее распространенных задач.
Вводятся понятия, необходимые для освоения основного материала: элементы работы с СУБД Microsoft Access и Microsoft SQL 2000, преобразования баз данных, элементы языка SQL, работа с утилитами SQL Server Enterprise Manager и SQL Query Analyzer. Излагаются основы защиты баз данных, а также подключение с различным уровнем доступа. Приводится большое количество примеров хранимых процедур, их применение в ADO.NET. Вводится технология XML с такими составляющими, как DTD, XSL, XSD. В основной части курса подробно разбираются следующие вопросы: объект Connection, пул соединений, объект Command и его методы ExecuteNonQuery,
ExecuteScalar и ExecuteReader, применение транзакций, объекты DataSet, DataTable и DataColumn, фильтрация, сортировка и поиск данных, вывод связанных таблиц, создание и использование типизированного объекта DataSet, чтение и запись документов XML, передача изменений в базу данных при помощи параметров объектов Command, транзакций и объекта CommandBuilder, свойства, методы объектов DataAdapter и DataSet, введение в XML-веб сервисы.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Технология Microsoft ADO .NET 2-е издание, исправленное Кариев Ч.А. Национальный Открытый Университет “ИНТУИТ” 2016 2
УДК 004.42(07) ББК 17 К23 Технология Microsoft ADO .NET / Кариев Ч.А. - M.: Национальный Открытый Университет “ИНТУИТ”, 2016 (Основы информационных технологий) ISBN 978-5-94774-679-2 Рассматривается использование технологии ADO.NET для взаимодействия с базами данных Microsoft SQL Server 2000 и Microsoft Access, а также библиотекой .NET Framework. Более 90 готовых примеров на языке Visual C#, доступных для скачивания, позволят освоить практические методы решения наиболее распространенных задач. Вводятся понятия, необходимые для освоения основного материала: элементы работы с СУБД Microsoft Access и Microsoft SQL 2000, преобразования баз данных, элементы языка SQL, работа с утилитами SQL Server Enterprise Manager и SQL Query Analyzer. Излагаются основы защиты баз данных, а также подключение с различным уровнем доступа. Приводится большое количество примеров хранимых процедур, их применение в ADO.NET. Вводится технология XML с такими составляющими, как DTD, XSL, XSD. В основной части курса подробно разбираются следующие вопросы: объект Connection, пул соединений, объект Command и его методы ExecuteNonQuery, ExecuteScalar и ExecuteReader, применение транзакций, объекты DataSet, DataTable и DataColumn, фильтрация, сортировка и поиск данных, вывод связанных таблиц, создание и использование типизированного объекта DataSet, чтение и запись документов XML, передача изменений в базу данных при помощи параметров объектов Command, транзакций и объекта CommandBuilder, свойства, методы объектов DataAdapter и DataSet, введение в XML-веб сервисы. (c) ООО “ИНТУИТ.РУ”, 2007-2016 (c) Кариев Ч.А., 2007-2016 3
Элементы работы с базами данных Понятие реляционной базы данных. Элементы работы с СУБД Microsoft Access. Преобразование базы данных Microsoft Access в формат Microsoft SQL. Определение структуры базы данных в SQL Server Enterprise Manager. Преобразование базы данных Microsoft SQL в формат Microsoft Access. Создание базы данных в SQL Server Enterprise Manager. Перенос файла Microsoft SQL на другой компьютер. Элементы языка SQL. Агрегатные функции. Оператор сравнения like. Создание таблицы с помощью запросов. Команды изменения языка DML Внимание! Для работы с лекциями 1, 2 необходимы учебные файлы, которые Вы можете загрузить здесь скачать: http://old.intuit.ru/department/se/msadonet/1/glava1.zip. Элементы работы с базами данных Что такое реляционная база данных? Базы данных - это совокупность сведений (об объектах, процессах, событиях или явлениях), относящихся к определенной теме или задаче. Она организована таким образом, чтобы обеспечить удобное представление этой совокупности, как в целом, так и любой ее части. Реляционная база данных представляет собой множество взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного типа. Каждая строка таблицы содержит данные об одном объекте (например товаре, фирме, клиенте), а столбцы таблицы содержат различные характеристики этих объектов - атрибуты (например, наименования и цены товаров, адреса и телефоны фирм или клиентов). Строки таблицы называются записями; все записи имеют одинаковую структуру - они состоят из полей, в которых хранятся атрибуты объекта (рис. 1.1). Каждое поле записи содержит одну характеристику объекта и имеет строго определенный тип данных (например, текстовая строка, число, дата). Все записи имеют одни и те же поля, только в них содержатся разные значения атрибутов. Для идентификации записей используется первичный ключ. Первичный ключ - это одно или несколько полей (столбцов), комбинация значений которых однозначно определяет каждую запись в таблице. 4
Рис. 1.1. Названия объектов в таблице Для работы с данными используются системы управления базами данных (СУБД). Основные функции СУБД - это определение данных (описание структуры баз данных), обработка данных и управление данными. Любая СУБД позволяет выполнять следующие операции с данными: добавлять в таблицу одну или несколько записей; удалять из таблицы одну или несколько записей; обновлять значения некоторых полей в одной или нескольких записях; находить одну или несколько записей, удовлетворяющих заданному условию. Для выполнения этих операций применяется механизм запросов. Результатом выполнения запросов является либо отобранное по определенным критериям множество записей, либо изменения в таблицах. Запросы к базе формируются на специально созданном для этого языке, который так и называется “язык структурированных запросов” (SQL - Structured Query Language). Важнейшей функцией СУБД является управление данными. Под управлением данными обычно понимают защиту данных от несанкционированного доступа, поддержку многопользовательского режима работы с данными и обеспечение целостности и согласованности данных. Элементы работы с СУБД Microsoft Access Рассмотрим применение концепции реляционных баз данных на практике. Представим себе деятельность туристической фирмы. Очевидно, что для работы необходимо вести какие-то записи. Их можно производить в обычной бумажной тетради, но со временем поиск нужных записей и финансовая отчетность будет представлять довольно 5
рутинную, длительную работу. Итак, необходимо создать электронную базу данных, которая должна значительно облегчить ведение всей статистики. Запускаем Microsoft Access 2003, в главном меню переходим “Файл - Создать”, на появившейся панели “Создание файла” выбираем “Новая база данных”. Далее указываем директорию, где будет сохранен файл базы данных, называем его “BDTur_firm.mdb” и нажимаем кнопку “Создать”. В отличие от других офисных приложений, мы не можем начать работу с базой данных, предварительно не сохранив ее файл. В результате проделанных действий появляется окно базы данных (рис. 1.2). Рис. 1.2. Окно базы данных В заголовке окна базы данных указывается ее формат по умолчанию - Access 2000, обеспечивающий совместимость с программами Microsoft Access 2000 и 97. Если совместимость не важна и требуется получить все преимущества новых версий Access, можно преобразовать базу данных, для чего выбираем пункт меню “Сервис \ Служебные программы \ Преобразовать базу данных \ В формат Access 2002-2003”. Мы продолжим работать с форматом по умолчанию. Если вы закроете приложение, а затем снова продолжите работу, при открытии файла базы данных всякий раз будет появляться предупреждение системы безопасности. Дело в том, что в базе данных Microsoft Access могут храниться макросы, которые при открытии могут выполнить вредоносные действия. Система безопасности защищает, таким образом, от деструктивных действий, возможных при открытии чужого файла базы данных. При работе над своей собственной базой данных эти предупреждения излишни. Для их отключения в главном меню программы выбираем “Сервис \ Макрос \ Безопасность” и на вкладке “Уровни безопасности” отмечаем переключатель “Низкая”. Далее в появившемся диалоговом окне разрешаем выполнение небезопасных выражений. Теперь предупреждения появляться не будут, а для блокирования макросов при открытии чужой базы данных достаточно удерживать клавишу Shift. Итак, приступим, наконец, к созданию базы данных. Самое сложное при этом выстроить логическую структуру таблиц, избежать наличия повторяющихся записей, а также обеспечить удобство пользования с учетом специфики работы. В окне базы 6
данных дважды щелкнем на надписи “Создание таблицы в режиме конструктора”. В появившемся окне “Таблица1: таблица” предстоит определить названия полей, которые и станут заголовками в этой таблице. Введем следующие названия полей (рис. 1.3). Рис. 1.3. Заполнение полей таблицы При вводе названия поля по умолчанию определяется для него тип данных “текстовый”. Для изменения типа следует выбрать нужное значение из выпадающего списка (рис. 1.4). Описания возможных типов данных Microsoft Access приводятся в таблице 1.1. Рис. 1.4. Определение типа данных поля Таблица 1.1. Типы данных Microsoft Access Тип данных Описание Текстовый Текст или комбинация текста и чисел, например, адреса, а также числа, не требующие вычислений, например, номера телефонов, инвентарные номера или почтовые индексы. Сохраняет до 255 знаков. Свойство “Размер поля” ( FieldSize ) определяет максимальное количество знаков, которые можно ввести в поле Поле МЕМО Предназначено для ввода текстовой информации, по объему 7
превышающей 255 символов. Такое поле может содержать до 65 535 символов. Этот тип данных отличается от типа Текстовый ( Text ) тем, что в таблице даются не сами данные, а ссылки на блоки данных, хранящиеся отдельно. За счет этого ускоряется обработка таблиц (сортировка, поиск и т. п.). Поле типа MEMO не может быть ключевым или проиндексированным Числовой Данные, используемые для математических вычислений, за исключением финансовых расчетов (для них следует использовать тип “Денежный” ).Сохраняет 1, 2, 4 или 8 байтов. Конкретный тип числового поля определяется значением свойства Размер поля ( FieldSize ) Дата/время Значения дат и времени. Сохраняет 8 байтов Денежный Используется для денежных значений и для предотвращения округления во время вычислений. Сохраняет 8 байтов Счетчик Автоматическая вставка уникальных последовательных (увеличивающихся на 1) или случайных чисел при добавлении записи. Сохраняет 4 байта Логический Данные, принимающие только одно из двух возможных значений, таких, как “Да/Нет”, “Истина/Ложь”, “Вкл/Выкл”. Значения Null не допускаются. Сохраняет 1 бит Поле объекта OLE Объекты OLE1) (такие, как документы Microsoft Word, электронные таблицы Microsoft Excel, рисунки, звукозапись или другие данные в двоичном формате), созданные в других программах, использующих протокол OLE. Сохраняет до 1 Гигабайта (ограничивается объемом диска) Гиперссылка Гиперссылки. Гиперссылка может указывать на расположение файла на локальном компьютере либо адреса URL. Сохраняет до 64 000 знаков Мастер подстановок Создает поле, позволяющее выбрать значение из другой таблицы или из списка значений, используя поле со списком. При выборе данного параметра в списке типов данных запускается мастер для автоматического определения этого поля. Обычно сохраняет 4 байта Применение определенного типа данных позволяет избежать ошибок в работе с таблицами - в поле с форматом даты невозможно ввести значение суммы, а в поле с денежным форматом невозможно ввести дату. Кроме того, для различных данных требуется разный объем памяти, и резервирование полей с однородным составом позволяет значительно уменьшить общий размер базы данных. Около поля “Код туриста” на рис. 1.2 находится изображение ключа. Это означает, что указанное поле будет первичным ключом для записей в таблице. Для того чтобы сделать данное поле ключевым, следует выделить его, щелкнуть правой кнопкой, а затем в появившемся контекстном меню выбрать “Ключевое поле” (рис. 1.5). 8
Рис. 1.5. Установка первичного ключа Первая таблица готова. Сохраняем ее, называя “Туристы”, и закрываем. Аналогичным образом создаем таблицы “Информация о туристах”, “Туры”, “Сезоны”, “Путевки” и “Оплата” (таблица 1.2). Таблица 1.2. Структура и описание таблиц базы данных BDTur_firm.mdb № Название Структура в режиме конструктора Вид в режиме конструктора Описание Имя поля Тип данных 1 Туристы Код туриста Счетчик Содержит основные сведения о туристе Фамилия Текстовый Имя Текстовый Отчество Текстовый 2 Информация о туристах Код туриста Числовой Содержит дополнительные сведения о туристе, которые были вынесены в отдельную таблицу - для избегания повторяющихся записей Серия паспорта Текстовый Город Текстовый Страна Текстовый Телефон Текстовый Индекс Числовой 3 Туры Код тура Счетчик Содержит общие сведения о странах для туров Название Текстовый Цена Денежный Информация Поле MEMO 4 Сезоны Код сезона Счетчик Содержит сведения о сезонах некоторые туры доступны лишь Код тура Числовой Дата начала Дата/время Дата конца Дата/время 9
Сезон закрыт Логический в определенный период Количество мест Числовой 5 Путевки Код путевки Числовой Содержит сведения о путевках, реализованных туристам. Код туриста Числовой Код сезона Числовой 6 Оплата Код оплаты Счетчик Содержит сведения об оплате за путевки Код путевки Числовой Дата оплаты Дата/время Сумма Денежный Теперь в окне базы данных есть несколько таблиц. Обратите внимание на наличие в нескольких таблицах одинаковых полей, например, в таблицах “Туристы” и “Информация о туристах” поле “Код туриста”. Их назначение станет ясно немного позже. Приступим к связыванию таблиц. В окне базы данных щелкаем правой кнопкой мыши на чистом месте и в появившемся меню выбираем “Схема данных” (или в главном меню выбираем “Сервис \ Схема данных”). В появившемся окне “Добавление таблицы” выделяем все таблицы и нажимаем кнопки “Добавить” и “Закрыть”. В окне “Схема данных” добавленные таблицы можно перетаскивать, располагая удобным способом. Выделив поле “Код туриста” в таблице “Туристы” и не отпуская левой кнопки мыши, перетащим его на поле “Код туриста” таблицы “Информация о туристах” (рис. 1.6). Рис. 1.6. Создание связи между таблицами После отпускания кнопки мыши появляется окно “Изменение связей”, в котором отмечаем галочки “Обеспечение целостности данных”, “Каскадное обновление связанных полей”” и “Каскадное удаление связанных записей”, а затем нажимаем кнопку “Создать” (рис. 1.7): 10