Министерство образования Республики Беларусь
Учреждение образования
«Гомельский государственный университет имени
Франциска Скорины»
Заочный факультет
Кафедра коммерческой деятельности и
информационных технологий в экономике
Компьютерные информационные технологии
Контрольная работа
Гомель 2010г.
Введение
Контрольная работа выполнена по варианту № 15 (зачетная книжка № 08-БУ-15).
В данной контрольной работе раскрыто два теоретических вопроса: вопрос № 1 – «Запросы к базам данных: SQL, QBE, UDF, транзакции», вопрос № 17 – «Создание файла базы данных в MS Access, конструкторы и мастера». А также выполнено практическое задание № 15: используя возможности системы управления базами данных MS Access, спроектирована база данных. В данной базе данных созданы таблицы в соответствии с индивидуальным заданием, сформированы запросы, составлена форма для просмотра и ввода информации в таблицы, созданы отчеты.
В конце работы приведена литература, с помощью которой была выполнена контрольная работа.
транзакция таблица файл базы данный
Вопрос №1. Запросы к базам данных: SQL, QBE, UDF, транзакции
Модификация и выбор данных осуществляются с помощью запросов (query). Большинство современных СУБД содержат средства для генерации таких запросов.
Для подготовки запросов с помощью различных СУБД чаще всего используются следующие два основных языка описания запросов:
язык QBE - язык запросов по образцу;
язык SQL - структурированный язык запросов.
По возможностям манипулирования данными при описании запросов указанные языки практически эквивалентны. Главное отличие между ними в способе формирования запросов - язык QBE предполагает ручное или визуальное формирование запроса, в то время как использование SQL означает программирование запроса.
Язык SQL (Structured Query Language) предназначен для выполнения операций над таблицами (создание, удаление, изменение структуры), а также некоторых сопутствующих операций. SQL является непроцедурным языком и не содержит операторов управления, организации подпрограмм, ввода-вывода. В связи с этим SQL автономно не используется, обычно он погружен в среду встроенного языка программирования СУБД.
Непроцедурность языка означает, что на нем можно указать, что нужно сделать с базой данных, но нельзя описать алгоритм этого процесса. Все алгоритмы обработки SQL-запросов генерируются самой СУБД и не зависят от пользователя. Язык SQL состоит из набора операторов, которые можно разделить на несколько категорий:
Data Definition Language (DDL) - язык определения данных, позволяющий создавать, удалять и изменять объекты в базах данных
Data Manipulation Language (DML) - язык управления данными, позволяющий модифицировать, добавлять и удалять данные в имеющихся объектах базы данных
Data Control Languages (DCL) - язык, используемый для управления пользовательскими привилегиями
Transaction Control Language (TCL) - язык для управления изменениями, сделанными группами операторов
Cursor Control Language (CCL) - операторы для определения курсора, подготовки операторов SQL к выполнению и некоторых других операций.
Применение SQL позволяет повысить эффективность обработки данных в базе данных. Основным назначением языка SQL является подготовка и выполнение запросов.
SQL-запрос составляется из последовательности SQL-инструкций, указывающих, что нужно сделать с входным набором данных (таблицей или запросом) для генерации выходного набора. Посредствам аргументов (параметров) этих инструкций конкретизируют выполняемое действие, т.е. задают имена полей, имена таблиц, условия, отношения и т.п. Извлеченная из базы информация (выходной набор) обрабатывается с помощью специальных статистических функций.
Первое описание языка QBE предложил Злуфф М.М. в 1975-1977 годах. В большинстве современных СУБД имеется свой вариант QBE, незначительно отличающийся от первого описания. Теоретической основой языка QBE является реляционное исчисление с переменными-данными. Язык QBE позволяет задавать сложные запросы к базе данных путем заполнения предлагаемой СУБД запросной формы. Такой способ создания запроса обеспечивает высокую наглядность и не требует указания алгоритма выполнения операции - достаточно описать образец ожидаемого результата. В каждой из современных СУБД имеется свой вариант языка QBE.
На языке QBE можно задавать как однотабличные так и многотабличные запросы. С помощью запросов на языке QBE можно выполнять следующие основные операции:
выборку данных;
вычисление над данными;
вставку новых записей;
удаление записей;
модификацию (мзменение) данных.
Выборка, вставка, удаление и модификация может производиться безусловно или в соответствии с условиями, задаваемыми с помощью логических выражений. Вычисления над данными задаются с помощью арифметических выражений и порождают в создаваеиых таблицах новые поля, называемые вычисляемыми.
QBE (queries by example) - запрос по образцу, представляет собой средство для визуального связывания таблиц и выбора полей, которые следует отобразить в результате запроса.
Запрсная форма имеет вид таблицы, имя и названия полей которой совпадают с именем и названиями полей соответствующей исходной таблицы. В современных СУБД, например MS Access, многие действия по подготовке запросов с помощью языка QBE выполняются с помощью указательного устройства мышь.
Некоторые СУБД позволяют использовать функции, определяемые пользователем – UDF (User-Defined Functions). Эти функции, как правило, хранятся во внешних библиотеках и должны быть зарегистрированы в базе данных, после чего их можно использовать в запросах.
Поскольку функции, определяемые пользователем, содержатся в библиотеках, их можно создавать с помощью любого средства разработки, позволяющего создавать библиотеки для платформы, на которой функционирует данная СУБД.
Транзакция - это группа операций над данными, которые либо выполняются все вместе, либо все вместе отменяются.
Завершение транзакции означает, что все операции, входящие в состав транзакции, успешно завершены, и результат их работы сохранен в базе данных.
Откат транзакции означает, что все уже выполненные операции, входящие в состав транзакции, отменяются и все объекты базы данных, затронутые этими операциями, возвращены в исходное состояние. Для реализации возможности отката транзакций многие СУБД поддерживают запись в log-файлы, позволяющие восстановить исходные данные при откате.
Транзакция может состоять из нескольких вложенных транзакций.
Некоторые СУБД поддерживают двухфазное завершение транзакций (two-phase commit) - процесс, позволяющий осуществлять транзакции над несколькими базами данных, относящихся к одной и той же СУБД.
Для поддержки распределенных транзакций (то есть транзакций над базами данных, управляемых разными СУБД), существуют специальные средства, называемые мониторами транзакций.
Вопрос №17. Создание файла базы данных в MS Access, конструкторы и мастера
Приложение пакета Microsoft Office – Access, является мощной и высокопроизводительной системой управления базами данных (СУБД).
После запуска программы Access на экране появляется окно приложения, а также диалоговое окно, в котором пользователь должен создать новую базу данных с помощью команды Создать меню Файл.
Создание новой реляционной базы данных Access осуществляется в соответствии с ее структурой, полученной в результате проектирования. Разработка структуры базы данных включает следующие этапы:
1. Работа начинается с составления генерального списка полей - он может насчитывать десятки и даже сотни позиций.
2. В соответствии с типом данных, размещаемых в каждом поле, определяют наиболее подходящий тип для каждого поля.
3. Далее распределяют поля генерального списка по базовым таблицам. На первом этапе распределение производят по функциональному признаку. Цель - обеспечить, чтобы ввод данных в одну таблицу производился, по возможности, в рамках одного подразделения, а еще лучше - на одном рабочем месте.
Наметив столько таблиц, сколько подразделений охватывает база данных, приступают к дальнейшему делению таблиц. Критерием необходимости деления является факт множественного повтора данных в соседних записях.
4. В каждой из таблиц намечают ключевое поле. В качестве такового выбирают поле, данные в котором повторяться не могут. Например, для таблицы данных о студентах таким полем может служить индивидуальный шифр студента. Если в таблице вообще нет никаких полей, которые можно было бы использовать как ключевые, всегда можно ввести дополнительное поле типа Счетчик - оно не может содержать повторяющихся данных по определению.
5. С помощью карандаша и бумаги расчерчивают связи между таблицами. Такой чертеж называется схемой данных.
Существует несколько типов возможных связей между таблицами. Наиболее распространенными являются связи «один ко многим» и «один к одному». Связь между таблицами организуется на основе общего поля, причем в одной из таблиц оно обязательно должно быть ключевым, то есть на стороне «один».
Разработав структуру базы данных, приступают к созданию таблиц на компьютере. Создание таблиц начинается с выбора элемента управления Таблицы. Чтобы создать таблицу вручную, следует использовать значок Создание таблицы в режиме конструктора.
То, что мы видим в окне Конструктора таблиц, фактически является графическим бланком для создания и редактирования структуры таблиц. В первом столбце вводят имена полей. Если свойство Подпись для поля не задано, то Имя поля станет одновременно и именем столбца будущей таблицы. Тип для каждого поля выбирают из раскрывающегося списка, открываемого кнопкой выбора типа данных.
Нижняя часть бланка содержит список свойств поля, выделенного в верхней части. Некоторые из свойств уже заданы по умолчанию. Свойства полей не являются обязательными. Их можно настраивать по желанию, а можно и не трогать.
При создании таблицы целесообразно (хотя и не обязательно) задать ключевое поле. Это поможет впоследствии, при организации связей между таблицами. Для задания ключевого поля достаточно щелкнуть на его имени правой кнопкой мыши и в открывшемся контекстном меню выбрать пункт Ключевое поле.
Закончив создание структуры таблицы, бланк закрывают (при этом система выдает запрос на сохранение таблицы), после чего дают таблице имя, и с этого момента она доступна в числе прочих таблиц в основном окне База данных.
После установки связей между таблицами и наполнения таблиц конкретными данными, можно приступать к работе с базой данных – создавать необходимые формы, запросы и отчеты.
Объекты базы данных отсортированы по категориям и расположены на разных вкладках ее окна.
Формы предназначены средство для ввода данных, позволяющее упростить процесс заполнения базы данных.
Запросы служат для извлечения данных из таблиц и представления их пользователю в удобном виде для анализа.
Отчеты служат для отображения итоговых данных из таблиц и запросов в удобном для просмотра виде.
В Access существуют разнообразные способы создания форм, запросов, отчетов и таблиц. Они могут быть созданы используя окно Конструктора или при помощи Мастера.
Если при запуске Access в диалоговом окне выбрать опцию Запуск мастера, то открывается окно Создание. Далее для создания базы можно использовать шаблоны. Чтобы обратиться к списку шаблонов, необходимо перейти на вкладку Базы данных. Создаются базы данных выбором из определенного списка. При этом возможен выбор таблиц, а в таблицах - нужных полей. После этого пользователь получает базу данных с таблицами, формами ввода и вывода. При первом знакомстве с Access такой способ создания баз данных весьма эффективен.
В таблице приведен список мастеров (программных модулей), имеющихся в Access.
Наименование | Назначение |
Мастер баз данных | Создает базы данных из определенного списка; возможен выбор необходимых таблиц и полей; создает формы и отчеты |
Мастер таблиц | Создает таблицы из списка уже готовых, которые можно изменить. Интересен только на начальном этапе использования таблиц, хотя определенный круг задач можно решить, применяя только таблицы, предоставляемые мастером |
Мастер простых форм | Создает простую форму, в которую выводятся выбранные пользователем поля из таблицы или запросы |
Мастер форы с диаграммой | Создает форму с диаграммой, отражающей данные для полей из таблиц и запросов, которые служат источником данных для форм |
Мастер форм со сводной таблицей Microsoft Excel | Создает форму, в которую включен объект «страница Excel» со сводной таблицей |
Мастер построения кнопок | Создает кнопки в форме или отчете с выбранными вами свойствами и функциональностью |
Мастер создания отчета | Создает отчет, в который выводятся выбранные пользователем поля из таблицы или запрос, с возможностями установки группировки и сортировки |
Мастер создания наклеек | Позволяет создавать наклейки как стандартные, так и иных размеров |
Мастер создания отчетов с диаграммой | Позволяет выводить на печать диаграммы, внешний вид которых зависит от данных в таблице или запросе, являющихся источником данных для отчета |
Практическое задание «Разработка приложения в MS Access» № 15
Условие: Используя возможности системы управления базами данных MS Access необходимо выполнить следующее задание:
1. Создать таблицы в соответствии с индивидуальным заданием (варианты заданий находятся в таблице 2), в таблицах определить первичные ключи, при помощи средств подстановки создать внешние ключи, сформировать схему данных, заполнить таблицы данными (минимальное количество записей указано в скобках после названий таблиц). Распечатать содержимое таблиц и схему данных.
2. Сформировать запросы в соответствии с вариантом задания. Распечатать структуру и результат выполнения запросов.
3. Для одной из таблиц создать и распечатать ленточную форму.
4. Создать и распечатать составную многотабличную форму для просмотра и ввода информации в таблицы, соединенные между собой отношением «один ко многим». Форма должна включать основную и подчиненную формы. В заголовок формы следует внести фамилию разработчика базы данных, номер группы, номер зачетной книжки и номер варианта, в примечание формы поместить кнопки вызова запросов.
5. Создать и распечатать отчеты. Отчеты должны содержать группировку по повторяющимся данным. В конце каждой группы и в конце отчета должны располагаться итоговые строки для числовых полей. Поля, по которым требуется выполнить группировку, в составе полей отчета вынесены в отдельные строки и выделены курсивом.
6. При помощи диспетчера кнопочных форм создать главную кнопочную форму приложения, состоящую как минимум из трех страниц: главной страницы с кнопками перехода на другие страницы и кнопкой завершения работы; страницы работы с данными с кнопками открытия ранее созданных форм и кнопкой возврата на главную страницу; страницы печати данных с кнопками вызова отчетов и кнопкой возврата на главную страницу.
Таблица | Материально-ответственные лица (3) | Код МОЛ, ФИО |
Товарно-материальные ценности (10) | Код ТМЦ, наименование ТМЦ, вид ТМЦ (канцелярские товары, расходные материалы…), цена | |
Поступление(14) | Код ТМЦ, поступившее количество, дата поступления, код МОЛ | |
Расход (6) | Код ТМЦ, дата расхода, израсходованное количество | |
Запросы | Поступление товарно-материальных ценностей | Наименование ТМЦ, цена, количество, стоимость (цена * количество) |
Наличие товарно-материальных ценностей |
ФИО, стоимость ТМЦ |
|
Движение товарно-материальных ценностей | Наименование ТМЦ, цена, поступившее количество, израсходованное количество, остаток (поступившее количество - израсходованное количество) | |
Наличие товарно-материальных ценностей по видам | Вид ТМЦ, стоимость ТМЦ | |
Период с наибольшей стоимостью поступивших ТМЦ | Год, месяц; стоимость поступивших ТМЦ | |
Отчеты | Движение товарно-материальных ценностей |
Наименование ТМЦ, цена Дата поступления, стоимость поступления, дата расхода, стоимость расхода, стоимость остатка |
Остаток товарно-материальных ценностей |
ФИО Наименование ТМЦ, цена, поступило, израсходовано, остаток, стоимость остатка |
При выполнении контрольной работы была спроектирована база данных «ТМЦ», содержащая таблицы «МОЛ», «ТМЦ», «Приход» и «Расход». Значения таблицы «МОЛ» используются при вводе данных в таблицу «Приход», значения таблицы «ТМЦ» используются при вводе данных в таблицы «Приход» и «Расход».
Структура таблицы «МОЛ»:
Название поля | Тип данных | Свойства |
Код МОЛ | Текстовый | Размер поля – 2, ключевое поле |
ФИО | Текстовый | Размер поля – 15 |
Структура таблицы «ТМЦ»:
Название поля | Тип данных | Свойства |
Код ТМЦ | Текстовый | Размер поля – 3, ключевое поле |
Наименование ТМЦ | Текстовый | Размер поля – 20, значение по умолчанию отсутствует |
Вид ТМЦ | Текстовый | Размер поля – 20, подстановка из созданного списка |
Цена | Денежный |
Структура таблицы «Приход»:
Название поля | Тип данных | Свойства |
Код ТМЦ | Текстовый | Размер поля – 3, подстановка поля Код ТМЦ таблицы «ТМЦ» |
Приход | Целое | Число десятичных знаков- 0; значение по умолчанию - 0 |
Дата | Дата/Время | Краткий формат даты |
Код МОЛ | Текстовый | Размер поля – 2, подстановка поля Код МОЛ таблицы «МОЛ» |
Структура таблицы «Расход»:
Название поля | Тип данных | Свойства |
Код ТМЦ | Текстовый | Размер поля – 3, подстановка поля Код ТМЦ таблицы «ТМЦ» |
Дата | Дата/Время | Краткий формат даты |
Расход | Целое | Число десятичных знаков- 0; значение по умолчанию - 0 |
Описание процесса создания.
1. Выбираем Объект Таблицы окна базы данных и способ создания новой таблицы – создание таблицы в режиме Конструктор. Окно Конструктора таблиц является графическим бланком для создания и редактирования структуры таблиц. Имя поля таблицы вводим в первом столбце, оно одновременно будет и именем столбца будущей таблицы, если свойство Подпись для этого поля не задано. Тип для каждого поля выбираем из раскрывающегося списка, открываемого кнопкой выбора типа данных.
Список свойств поля, выделенного в верхней части содержит нижняя часть бланка. Некоторые из свойств уже заданы по умолчанию. Их можно настроить по желанию, а можно и не изменять.
Для создания поля подстановки в строке Тип данных для поля выбирают Мастер подстановок…, а в открывшемся диалоговом окне Создание подстановки создается столбец подстановки: - это может быть фиксированный набор или поле таблицы, задается подпись столбца подстановки и нажимается кнопка ОК.
После завершения ввода полей таблицы и их свойств, бланк закрываем и указываем имя таблицы.
При создании связей между таблицами открываем окно Схема данных командой Схема данных в меню Сервис. В окне Таблицы выбираем таблицу и нажимаем кнопку Добавить. Затем, после выбора всех таблиц, нажимаем кнопку Закрыть. В окне Схема данных появляются небольшие окна со списками полей выбранных таблиц. Перетаскиваем ключевое поле главной таблицы к соответствующему полю вспомогательной таблицы при помощи мыши. Активизируем опцию Обеспечение целостности данных в появившемся диалоговом окне Связи. При этом будет установлено отношение один-ко-многим, или один-к-одному, что отражается в области Тип отношения окна Связи. Нажимаем кнопку Создать и в окне Схема данных графически обозначится связь между полями таблиц.
По ключевому полю Код МОЛ таблицы «МОЛ» и полю Код МОЛ таблицы «Приход» установлена связь. Эти поля имеют одинаковый тип данных и одинаковые значения свойств. Тип установленной связи – один ко многим. Между таблицами «ТМЦ», «Приход» и «Расход» по полю Код ТМЦ установлена связь один ко многим, поле Код ТМЦ является ключевым для таблицы «ТМЦ».
2. Для создания запроса выбираем Объект Запросы окна базы данных и способ создания - создание запроса в режиме Конструктор. Открывается специальный бланк запроса. Бланк запроса состоит из двух областей. В верхней отображается структура таблиц, к которым запрос адресован, а нижняя область разбита на столбцы. Для заполнения столбцов в нижней части бланка, щелкаем двойными щелчками на названиях тех полей выбранных таблиц из верхней части бланка, которые должны войти в результирующую таблицу. Сформировав структуру запроса, его закрываем и даем ему имя. После нажатия кнопки Открыть, на закладке Запросы окна базы данных, отображается результат выполнения запроса.
Описание структуры созданных запросов.
Работа по созданию запросов выполняется при помощи Конструктора запросов. В работе создано четыре запроса.
1) Поступление ТМЦ.
При создании запроса используются две таблицы «ТМЦ» и «Приход». Выбраны поля Наименование ТМЦ, Цена таблицы «ТМЦ» и поле Приход таблицы «Приход». Задано вычисляемое поле Стоимость:[Цена]*[Приход].
2) Наличие ТМЦ
При создании запроса используются три таблицы «МОЛ», «Приход» и «ТМЦ». Выбрано поле ФИО таблицы «МОЛ» и задано вычисляемое поле Стоимость:[Цена]*[Приход]. Применена групповая операция, для поля Стоимость в строке Групповая операция бланка Конструктора запросов задана функция Sum(), для поля ФИО - Группировка.
3) Движение ТМЦ.
Для запроса «Движение ТМЦ» создан вспомогательный запрос «Запрос3», при создании которого используются таблицы «ТМЦ» и «Приход». Выбраны поля Наименование ТМЦ, Цена, Код ТМЦ и Вид ТМЦ таблицы «ТМЦ» и поле Приход таблицы «Приход». Применена групповая операция, для поля Приход в строке Групповая операция бланка Конструктора запросов задана функция Sum(), для остальных полей – Группировка.
При создании запроса Движение ТМЦ используется таблица «Расход» и созданный запрос, из которого выбираем поля, Наименование ТМЦ, Цена и поле Приход. Из таблицы «Расход» выбрано поле Расход. Создано вычисляемое поле Остаток: IIf([Расход]>0; [Sum-Приход]-[Расход]; [Sum-Приход]).
4) Наличие ТМЦ по видам.
Создаем вспомогательный запрос «Наличие», обращенный к таблице «Расход» и запросу «Запрос3». Выбрано поле Вид ТМЦ запроса «Запрос3» и создано вычисляемое поле Остаток: IIf([Расход]>0; [Sum-Приход]-[Расход]; [Sum-Приход]).
Запрос «Наличие ТМЦ по видам» обращен к таблице «ТМЦ» и запросу «Наличие». Выбрано поле Вид ТМЦ таблицы «ТМЦ» и создано вычисляемое поле Стоимость ТМЦ:[Цена]*[Остаток]. Применена групповая операция, для поля Стоимость ТМЦ в строке Групповая операция бланка Конструктора запросов задана функция Sum(), для поля Вид ТМЦ - Группировка.
5) Период с наибольшей стоимостью поступивших ТМЦ.
Создаем вспомогательный запрос «Поступление ТМЦ по дате», обращенный к таблицам «ТМЦ» и «Приход».
Запрос «Период с наибольшей стоимостью поступивших ТМЦ» обращен к запросу «Поступление ТМЦ по дате». При его создании используются функции Year(), Month(). В строке Условие отбора для поля Стоимость задано - DMax("[Стоимость]";"Поступление ТМЦ по дате").
4. При работе с формами активизируем Объект Формы окна базы данных. Для создания формы выбираем способ создания - Мастер форм. В диалоговых окнах Создание форм выбираем таблицу и поля, которые нужно поместить на форму, выбираем таблицу, которая будет являться подчиненной, выбираем поля подчиненной таблицы, вид формы, стиль оформления, нажимая кнопку Далее после сделанного выбора. В последнем диалоговом окне Создание форм указываем имя формы и нажимаем кнопку Готово.
Для дальнейшей работы переходим в режим Конструктора форм, где задаем заголовок формы и помещаем на форму кнопки, для вызова запросов. Используем для этого Панель инструментов, где выбираем элемент управления – Кнопка и помещаем его на форму. Запускается Мастер по разработке кнопок. Выбираем событие – вызов запроса, с которым связываем данную кнопку, нажимаем кнопку Далее. В следующем окне выбираем запрос, выполняемый по нажатию кнопки, в следующем окне задаем текст, который размещается на кнопке, и нажимаем кнопку Готово.
5. Для создания отчета выбираем Объект Отчеты. Выбираем способ создания – Мастер отчетов. В качестве источника данных выбираем запрос. В первом диалоговом окне Мастера переносим поля, во втором – выбираем уровни группировки, в следующем диалоговом окне указываем способ сортировки, создаем поля для итоговой информации, в следующем окне выбираем стиль оформления отчета и ориентацию его страниц при печати, в следующем диалоговом окне выбираем стиль отчета, в последнем – вводим заголовок отчета и нажимаем кнопку Готово.
Объекты созданной базы данных.
Таблицы базы данных в режиме Таблица
Таблицы базы данных в режиме Конструктор таблиц
Схема данных
Запрос «Поступление ТМЦ»
Запрос «Поступление ТМЦ» в режиме Конструктора запросов
Запрос «Наличие ТМЦ»
Запрос «Наличие ТМЦ» в режиме Конструктора запросов
Запрос «Движение ТМЦ»
Запрос «Движение ТМЦ» в режиме Конструктора запросов
Запрос «Наличие ТМЦ по видам»
Запрос «Наличие ТМЦ по видам» в режиме Конструктора запросов
Запрос «Период с наибольшей стоимостью поступивших ТМЦ»
Запрос «Период с наибольшей стоимостью поступивших ТМЦ» в режиме Конструктора запросов
Форма
Страницы кнопочной формы
Список литературы
1. Винтер П. Мicrosoft Access 97: справочник. - СПб.: Питер, 1998. – 416 с.
2. Змитрович А.И. Базы данных. Уч. пособие для ВУЗов. – Мн.: Университетское, 1991. – 271 с.: ил
3. Р.Дженнингс. Microsoft Access 97 в подлиннике. Том I,II: пер. с англ. – СПб.: BHV – Санкт-Петербург, 1999.- 624с.
4. Каратыгин С.А., Тихонов А.Ф., Долголаптев В.И. Электронный офис. М:.БИНОМ,1997. В 2-х томах.
5. Экономическая информатика. Учебник (Под редакцией Евдокимова). – Спб.: Питер Паблишинг, 1997
6. Мicrosoft Access 2000: справочник. Под ред. Ю.Колесникова.- СПб.: Питер, 1999. – 352 с