Лабораторная работа № 1 Изучение возможностей СУБД Access 2007 по созданию и ведению баз данных 1. Цель работы Целью работы является изучение возможностей СУБД Microsoft Access 2007 по созданию и ведению баз данных. 2. Задачи Задачами лабораторной работы являются овладение навыками создания и заполнения таблиц баз данных, создания запросов, отчетов и форм, освоение программных технологий доступа к базам данных Microsoft Access из приложений. 3. Теоретическая часть Базы данных. На сегодняшний день роль баз данных в различных областях деятельности сложно переоценить. Основное их назначение – хранить и накапливать информацию, предоставляя пользователям средства для ее извлечения и модификации. При этом под информацией подразумевается все, что в данной конкретной ситуации имеет значение для пользователя и его текущей работы. Для изучения баз данных необходимо прежде определиться с основополагающим понятием курса. Согласно «официальному» определению, база данных – это совокупность структурированных данных, хранящихся с минимальной (структурированной) избыточностью и используемых несколькими приложениями под управлением единого метода доступа. В этом определении есть несколько понятий и фраз, нуждающихся в пояснении: – структурированность – данные хранятся во множестве единообразно рассматриваемых объектов; – минимальная избыточность – сознательное дублирование данных для повышения производительности; – использование несколькими приложениями – базы данных могут удовлетворять информационные потребности сразу нескольких приложений. При этом соблюдается принцип разделения данных и алгоритма, т. е. данных и приложений; – единый метод доступа – между данными и приложениями есть промежуточный слой – СУБД. СУБД. СУБД (система управления базами данных) представляет собой инструментальное программное обеспечение для управления и создания баз данных. Назначением СУБД является предоставление пользовательского интерфейса для взаимодействия с базой данных. Пользовательский интерфейс может быть определен как существующий в системе ограничительный уровень, ниже которого для пользователя все остается невидимым. В общем виде работу СУБД можно представить так: 1) Пользователь выдает запрос на доступ к данным, предъявляя определенный подъязык данных (обычно это SQL). 2) СУБД перехватывает этот запрос и анализирует его. 3) СУБД выполняет необходимые операции в хранимой БД с учетом прав пользователя. Традиционно в структуре СУБД выделяют: – процессор ЯОД (языка обработки данных), предназначенный для задания внутренней и внешней структуры БД. – процессор ЯМД (языка манипулирования данными) для того, чтобы обрабатывать запросы пользователей на выборку, изменение или удаление данных, уже имеющихся в БД, или на добавление в нее новых данных. 1 В настоящее время выделяют три базовых класса СУБД: – крупномасштабные серверы баз данных – СУБД, предназначенные для управления доступом к базам данных по технологии «клиент-сервер» (технология, по которой клиент посылает запросы, которые обрабатываются на сервере, а затем клиенту возвращается результат). Они используются для «больших» баз данных (терабайты информации) и большого числа пользователей; – среднемасштабные СУБД – предназначены для обслуживания запросов преимущественно через Интернет. Чаще всего используются при разработке Web-приложений; – настольные СУБД – инструментальная среда для разработки приложений. Эти системы позволяют создавать базы данных, писать программный код, создавать интерфейс пользователя. Настольные СУБД. Настольные СУБД используются для сравнительно небольших задач (небольшой объем обрабатываемых данных, малое количество пользователей) и имеют относительно упрощенную архитектуру. Настольные СУБД не содержат специальных приложений и сервисов, управляющих данными, а используют для этой цели файловые сервисы операционной системы. Основным недостатком настольных СУБД являются их ограниченные возможности. Однако такие недостатки проявляются не сразу, а лишь в процессе длительной эксплуатации, когда объем данных и число пользователей становятся достаточно велики – это приводит к снижению производительности приложений, использующих такие СУБД. Microsoft Access является ярким представителем настольных СУБД реляционного типа, то есть использует систему связанных таблиц для хранения и обработки данных. Популярность Microsoft Access во многом объясняется включением в состав пакета Microsoft Office. Важным достоинством этой СУБД является то, что она имеет очень простой графический интерфейс, который позволяет не только создавать собственные базы данных, но и разрабатывать приложения для работы с ними. СУБД Microsoft Access хранит все данные в одном файле, хотя и распределяет их по разным таблицам. Устаревшие версии Access (2003 и ранее) используют для своих файлов расширение mdb, более актуальные версии (2007, 2010) ориентируются на расширение accdb (хотя и не исключают возможности использования прежних версий). Все версии Access имеют в своем арсенале средства, значительно упрощающие ввод и обработку данных, поиск данных и предоставление информации в виде таблиц, графиков и отчетов. Таблицы. В реляционных базах данных все данные, доступные пользователю, организованы в виде таблиц, а все операции над данными сводятся к операциям над этими таблицами. Таблицы разделены на строки и столбцы, на пересечении которых находятся значения данных. В любой таблице есть всегда как минимум один столбец. У каждого столбца в таблице есть свое имя, которое обычно служит заголовком столбца. Все столбцы в одной таблице должны иметь уникальные имена, однако разрешается присваивать одинаковые имена столбцам, содержащимся в разных таблицах. Столбцы таблицы упорядочены слева направо, и их порядок определяется при создании таблицы. Каждый столбец характеризуется своим типом данных: все данные из одного столбца должны относиться к одному и тому же типу данных. Различные СУБД определяют свои типы данных для столбцов, но в той или иной форме в любой СУБД поддерживаются строковый (символьный, текстовый), числовой, дата / время, логический и другие базовые типы данных. В таблице может содержаться любое количество строк. Строки таблицы идентифицируют уникальными значениями столбца или группы столбцов – первичными ключами. 2 Вполне допускается существование таблицы с нулевым количеством строк. Такая таблица называется пустой. Пустая таблица сохраняет структуру, определенную ее столбцами, просто в ней не содержится данных. Для таблиц в СУБД Microsoft Access обычно используются режим таблицы, предназначенный для ввода данных, и режим конструктора, позволяющий просмотреть и модифицировать структуру таблицы. Запросы. В СУБД Microsoft Access с помощью запроса можно найти и извлечь данные (в том числе и данные из нескольких таблиц), соответствующие указанным условиям. Запрос в Access является объектом, который сохраняется в файле базы данных под определенным именем и может многократно повторяться. В таком понимании запрос можно рассматривать как представление или виртуальную таблицу, позволяющим пользователю увидеть результаты сохраненного запроса. К представлениям возможен такой же доступ, как если бы они были простой таблицей. В СУБД Microsoft Access создание запросов возможно двумя способами. При создании запроса при помощи мастера пользователь последовательно в автоматизированном режиме выбирает нужные ему параметры. При работе с конструктором запросов можно использовать специальный язык Jet SQL – диалект языка структурированных запросов, который используется ядром базы данных Access (процессором обработки данных Jet). Отчеты и формы. Форма — это объект базы данных, который можно использовать для создания интерфейса пользователя для приложения базы данных. Формы можно использовать для просмотра, ввода и изменения данных в одной строке за один раз. Формы обычно содержат элементы управления, связанные с полями таблиц, как базовых, так и виртуальных (представлений). При открытии формы Access извлекает данные из одной или нескольких таких таблиц и отображает их в выбранном при создании формы формате. Отчет можно использовать для быстрого анализа данных или их отображения в определенном виде в печатном или другом формате. В отличие от формы отчет не позволяет модифицировать хранимую в базе данных информацию и предназначен только для ее просмотра. Формы и отчеты в Microsoft Access создаются либо с помощью мастеров в автоматизированном режиме, либо посредством конструкторов, обеспечивающих более тонкую «настройку». Кроме того, начиная с Access 2007 доступен режим макета. Режим макета представляет собой наиболее наглядный режим изменения форм. Его можно использовать для внесения практически любых изменений в форму в Access. В режиме макета форма уже запущена. Данные отображаются практически так же, как при реальном использовании формы. При этом в данном режиме можно изменять структуру формы. Поскольку при изменении формы отображаются реальные данные, в режиме макета удобно задавать размер элементов управления и выполнять иные задачи, влияющие на вид и удобство использования форм. Поставщики данных. Поставщики (провайдеры) данных (data provider) – это промежуточный слой между приложением и базой данных, который берет на себя функции по взаимодействию с базами данных. Они предназначены для обеспечения быстрого доступа к данным для их создания, модификации и обработки. Практически все языки программирования высокого уровня предоставляют набор поставщиков данных, задающих интерфейс доступа к базам данных Microsoft Access. Базовый «набор» провайдеров представлен тремя драйверами: ADO, OleDb (Microsoft OLE DB для Microsoft Jet) и ODBC (Microsoft Access ODBC). 3 4. Порядок выполнения работы А. Создание и заполнение базы данных 1. Создать папку для размещения файла базы данных. Запустить Microsoft Access. Создать новую базу данных: Пуск | Программы | Microsoft Office | Microsoft Office Access 2007 | ф. Microsoft Access | Новая пустая база данных | Новая база данных | Панель Новая база данных | Имя файла ← Education; Поиск расположения для размещения базы данных ← путь к созданной директории; кн. Создать ► ф. Education: база данных (Access 2007) – Microsoft Access 2. В базе данных с помощью конструктора таблиц создать структуру таблицы Студенты (справочник студентов): – задать имя таблицы Студенты: ф. Education: база данных | ф. Таблица1 | кл. [Ctrl + S] ►ф. Сохранение | Имя таблицы ← Студенты – перейти в режим конструктора ф. Education: база данных | ф. Студенты | вкл. Работа с таблицами ►Режим таблицы (Вид ← Конструктор) ► ф. Студенты – задать поле идентификатора студента (счетчик, первичный ключ). Если поле уже задано, пропустить данный пункт: ст. Имя поля ← Код; Тип данных ← Счетчик; вкл. Работа с таблицами ►Конструктор | кн. Ключевое поле; перейти на след. строку – задать поле номера зачетной книжки (уникальное, 6 цифр): ст. Имя поля ← ЗачКн; Тип данных ← Текстовый; ф. Свойства поля | Общие | Размер поля ← 6; Индексированное поле ← Да (Совпадения не допускаются); Обязательное поле ← Да; Маска ввода ← 000000; перейти на след. строку; – задать поля фамилии, имени, отчества (строковые): ст. Имя поля ← Фам; Тип данных ← Текстовый; ф. Свойства поля | Общие | Размер поля ← 20; Обязательное поле ← Да; перейти на след. строку; аналогично – для имени (Имя) и отчества (Отч); – создать уникальный индекс ФИО из полей фам, имя, отч: вкл. Работа с таблицами ►Конструктор | кн. Индексы ► ф. Индексы | кл. на пустую строку | Индекс ← ФИО; Имя поля ← Фам; в этом же столбце перейти на след. строку | Имя поля ← Им; в этом же столбце перейти на след. строку | Имя поля ← Отч; закрыть окно); перейти на след. строку; – задать поле кода специальности (до 7 русских букв, подстановка из списка): ст. Имя поля ← Спец; Тип данных ← Текстовый; ф. Свойства поля | Общие | 4 Размер поля ← 7; Условие на значение ← Between "А" And "яяяяяяя"; Обязательное поле ← Да; Тип данных ← Мастер подстановок… ► ф. Создание подстановки | уст. Будет введен фиксированный набор значений; кн. Далее ► Число столбцов ← 2; отрегулировать ширину столбцов; кн. Далее ► Доступные поля ← Столбец1; кн. Далее ► кн. Готово ►; перейти на след. строку; ф. Свойства поля | Подстановка | Источник строк ←АСОИУ; Автоматизированные системы…; МИЭ; Матметоды в экон… и т.д. для др. специальностей); перейти на след. строку; – задать поле курса (одна цифра от 1 до 6): ст. Имя поля ← Курс; Тип данных ← Текстовый; ф. Свойства поля | Общие | Размер поля ← 1; Обязательное поле ← Да; Условие на значение ← Between “1” And “6”); перейти на след. строку; – задать поле номера группы (две цифры): ст. Имя поля ← Гр; Тип данных ← Текстовый; ф. Свойства поля | Общие | Размер поля ← 2; Обязательное поле ← Да; Маска ввода ← 00); перейти на след. строку; – задать поле даты рождения: ст. Имя поля ← ДатаРожд; Тип данных ← Дата/время; Свойства поля | Общие | Формат поля ← Краткий формат даты); перейти на след. строку; – задать поле биографии (мемо): Имя поля ← Биогр; Тип данных ← Поле МЕМО; Свойства поля | Общие | Формат поля ← @;”Неизвестна”); перейти на след. строку; – задать поле фотографии (объект): Имя поля ← Фото; Тип данных ← Поле объекта OLE; перейти на след. строку; – сохранить структуру таблицы одним из трех способов: сочетанием клавиш [Ctrl + S], кн. Office | Сохранить или кн. «Сохранить» на панели инструментов. 3. Аналогичным образом создать структуру таблицы Предметы (справочник предметов) с полями: – создать новую таблицу базы данных Education ф. Education: база данных | вкл. Создание ►Таблица – задать имя таблицы Предметы: ф. Education: база данных | ф. Таблица1 | кл. [Ctrl + S] ►ф. Сохранение | Имя таблицы ← Предметы 5 – перейти в режим конструктора ф. Education: база данных | ф. Предметы | вкл. Работа с таблицами ►Режим таблицы (Вид ← Конструктор) ► ф. Предметы – задать поле идентификатора предмета (счетчик, первичный ключ). Если поле уже задано, пропустить данный пункт: ст. Имя поля ← Код; Тип данных ← Счетчик; вкл. Работа с таблицами ►Конструктор | кн. Ключевое поле; перейти на след. строку – аналогичным образом создать остальные поля таблицы: – Название (название предмета (строковое)); – Цикл (цикл дисциплин, к которым относится предмет (строковое)); – Объем (количество часов (числовое)); – Кафедра (название кафедры, на которой ведется преподавание предмета (строковое)). – указать первичный ключ таблицы (поле Код); – для каждого из полей таблицы придумать ограничения на значения. 4. Аналогичным образом создать структуру таблицы Успеваемость (успеваемость студентов по предметам) с полями: – Код студента (идентификатор студента (тип такой же, как в таблице Студенты, но не счетчик)); – Код предмета (идентификатор предмета (тип такой же, как в таблице Предметы, но не счетчик)); – Оценка (оценка (символ)); – Дата (дата (дата)). – ввести составной первичный ключ (поля идентификаторов студента и предмета): ф. конструктора таблицы Успеваемость | кл. на поле Код студента; Ctrl + кл. на поле Код предмета ► выделены оба поля; (панель инстр. | кн. Ключевое поле) ► составной ключ готов; – для каждого из полей таблицы придумать ограничения на значения; – задать таблицы студентов и предметов в качестве таблиц подстановки для идентификаторов студента и предмета в таблице успеваемости: ф. конструктора таблицы Успеваемость | кл. на поле Код студента; Тип данных | Мастер подстановок… ► ф. Создание подстановки | уст. «Объект "столбец подстановки" будет использовать значения из таблицы или запроса»; кн. Далее ► след. стр. | кл. Студенты; кн. Далее ► след. стр. | Выбранные поля << все поля, кроме ДатаРожд, Биогр, Фото; кн. Далее ► след. стр. | Выберите порядок сортировки элементов списка | выбр. Код; кн. Далее ► след. стр. | отрегулировать ширину столбцов; кн. Далее ► след. стр. | кн. Готово ► ф. …сохранить таблицу? | кн. Да – аналогичным образом указать таблицу Предметы в качестве таблицы подстановки для поля Код предмета. – задать допустимые значения оценок (5, 4 и т. д.) в качестве значений подстановки для поля Оценка. 6 5. Связать таблицы, сделав таблицы студентов и предметов родительскими, а таблицу успеваемости – дочерней; установить правила ссылочной целостности: каскадное для удаления и изменения: ф. Education: база данных | вкл. Работа с базами данных | кн. Схема данных ► (ф. Схема данных ► таблицы на схеме (если на предыдущих этапах все было сделано верно, то на форме будут представлены все три таблицы базы данных Выбрать связь между таблицами Студенты и Успеваемость; дв. кл. на линии связи ); ► (ф. Изменение связей | уст. Обеспечение целостности; уст. Каскадное обновление; уст. Каскадное удаление; кн. OK) ► связь на схеме; – Аналогичным образом изменить свойства связи между таблицами Предметы и Успеваемость. – Закрыть форму Схеме данных. 6. Наполнить базу данных сведениями о студентах (не менее 5), предметах (не менее 3) и оценках (не менее 10). Освоить доступ к дочерним записям из родительской таблицы. Проверить работоспособность полей и таблиц подстановок. Освоить приемы изменения и удаления полей и записей. Для OLE-полей опробовать различные варианты внедрения и связывания объектов, а также приемы их модификации. Проверить работоспособность ограничений значений полей, уникальности и др., предусмотренные при задании структуры базы данных. Проверить работоспособность ссылочной целостности, удаляя, изменяя и вставляя данные. Б. Запросы, отчеты и формы 1. Создать запрос для вывода кратких сведений о студентах (идентификатор, номер зачетки, фамилия и инициалы, идентификатор группы): – создать новый запрос ф. Education: база данных | вкл. Создание; кн. Конструктор запросов ► (ф. конструктора запросов (ф. Добавление таблицы | Таблицы | дв. кл. Студенты; кн. Закрыть) | (1-я кол | Поле ← Код); (2-я кол | Поле ← ЗачКн); (3-я кол | Поле | Shift + F2 ► (ф. Область ввода ← ФИО: Trim(Фам)&' '&Left(Trim(Имя);1)&'.' &Left(Trim(Отч);1)&'.' ; кн. ОК)) (4-я кол | Поле | Shift + F2 ► (ф. Область ввода ← Группа:Trim(Спец)&'-'&Курс&Гр; кн. ОК)) кл. [Ctrl + S] ►ф. Сохранение | Имя запроса ← Студенты_инфо – проверить работоспособность запроса ф. Education: база данных | ф. Все таблицы; дв.кл. Студенты_инфо ► результаты запроса на экране. 2. Аналогичным образом создать запрос для вывода сведений об успеваемости студентов из таблицы Успеваемость с указанием сведений о студенте из запроса Студенты_инфо и сведений о предмете из таблицы Предметы. Результат должен содержать следующие поля: ФИО студента, Группа, Предмет, Дата, Оценка. Назвать запрос как Студенты_успев. 3. Построить форму 1-табличного отчета с помощью мастера для таблицы студентов: ф. Education: база данных | вкл. Создание; гр. Отчеты | кн. Мастер отчетов ► ф. Создание отчетов | Таблицы и запросы ← выбр. Студенты | Доступные поля ← кн. [>>] | кн. Далее) ► след. стр. | кн. Далее ► след. стр. | кн. Далее ► след. стр. | выбр. Макет и Ориентацию | кн. Далее ► след. стр. | выбр. Стиль | кн. Готово 7 4. Аналогичным образом построить и проверить отчетную форму для таблицы предметов, выбрав для нее другие параметры функционирования и оформления. 5. Построить форму многотабличного отчета ("один ко многим") с помощью мастера отчетов для таблиц студентов и предметов в качестве родительских и таблицы успеваемости в качестве дочерней: ф. Education: база данных | вкл. Создание; гр. Отчеты | кн. Мастер отчетов ► ф. Создание отчетов | Таблицы и запросы ► выбр. Студенты | Доступные поля ← выбр. ЗачКн, Фам, Имя, Отч, Спец, Гр, Курс выбр. Предметы | Доступные поля ← выбр. Название выбр. Успеваемость | Доступные поля ← выбр. Оценка, Дата | кн. Далее) ► след. стр. | кн. Далее ►след. стр. | кн. Далее ►след. стр. | кн. Далее ► след. стр. | выбр. Макет и Ориентацию | кн. Далее ► след. стр. | выбр. Стиль | кн. Далее ► след. стр. | Задайте имя отчета ← Студенты_успев | кн. Готово. 6. Освоить приемы простейшей модификации созданных отчетов с помощью конструктора отчетов. 7. Освоить создание однотабличной формы с помощью мастера: ф. Education: база данных | вкл. Создание; гр. Формы | кн. Другие формы ← выбр. Мастер отчетов ► ф. Создание форм | Таблицы и запросы ← выбр. Студенты | Доступные поля ← кн. [>>] | кн. Далее) ► след. стр. | выбр. Внешний вид формы | кн. Далее ► след. стр. | выбр. Стиль | кн. Готово 8. Аналогичным образом создать однотабличную форму Предметы и многотабличную форму Успеваемость студентов. 9. Освоить приемы простейшей модификации созданных форм с помощью конструктора форм. Изучить, чем отличается использование режима формы от режима таблицы. В. Access и Delphi 1. Запустить среду программирования Delphi: Пуск | Программы | CodeGear RAD Studio 2009 | Delphi 2009 | 2. Создать новый проект и сохранить его под именем Education: File | New | VCL Forms Application – Delphi ► вкл. Unit1 File | Save Project As… ► ф. Save Unit1 As… | выбр. расположение проекта | Имя файла ← Form.pas | кн. Сохранить ► ф. Save Project1 As… | Имя файла ← Education.dproj | кн. Сохранить 3. Найти набор компонентов для работы с базами данных на панели инструментов: Tool Palette | dbGo 4. Выбрать компонент ADOConnection для установления соединения с базой данных: Tool Palette | dbGo | TADOConnection ►выдел. лев. кн. мыши и перетащить на форму ► на форме появится компонент с именем ADOConnection1 5. Установить параметры соединения Выделить ADOConnection1 | ф. Object Inspector | выбр. Connection String | кн. […] ► ф. Form1.ADOConnection1 Connection String | уст. Use Connection String | кн. Build ► 8 ф. Свойства связи с данными | вкл. Поставщик данных ← выбр. Microsoft Office 12.0 Access Database Engine OLE DB Provider | кн. Далее ►вкл. Подключение | Источник данных ← Полный путь к файлу с базой данных \Education.accdb | кн. Проверить подключение ►если появилось сообщение «Проверка подключения выполнена», то соединение установлено успешно; иначе повторить настройку соединения ф. Свойства связи с данными | кн. OK ► ф. Form1.ADOConnection1 Connection String | кн. OK 6. Переименовать компонент соединения Выделить ADOConnection1 | ф. Object Inspector | выбр. Name ← Conn 7. Запретить запрос логина и пароля при попытке установления соединения: Выделить Conn | ф. Object Inspector | выбр. LoginPrompt ← False 8. Активировать соединение: Выделить Conn | ф. Object Inspector | выбр. Connected ← True 9. Установить компонент ADOTable Tool Palette | dbGo | TADOTable ►выдел. лев. кн. мыши и перетащить на форму ► на форме появится компонент с именем ADOTable1 10. Установить параметры соединения для объекта ADOTable1 на основе ранее созданного компонента Conn: Выделить ADOTable1 | ф. Object Inspector | выбр. Connection ← Conn 11. Выбрать виртуальную таблицу (запрос) Студенты_успев в качестве источника данных для ADOTable1: Выделить ADOTable1 | ф. Object Inspector | выбр. TableName ← Студенты_успев 12. Переименовать объект ADOTable1 Выделить ADOTable1 | ф. Object Inspector | выбр. Name ← Table 13. Активировать компонент: Выделить Table | ф. Object Inspector | выбр. Active ← True 14. Установить компонент DataSource для задания соответствия между интерфейсными элементами формы и компонентами соединения с базой данных: Tool Palette | Data Access | TDataSource ►выдел. лев. кн. мыши и перетащить на форму ► на форме появится компонент с именем DataSource1 15. Определить объект Table как источник данных для объекта DataSource1 Выделить DataSource1 | ф. Object Inspector | выбр. DataSet ← Table 16. Переименовать объект DataSource1 Выделить DataSource1 | ф. Object Inspector | выбр. Name ← DataSource 17. Определить на форме таблицу с записями из таблицы Студенты_успев: Tool Palette | Data Controls | TDBGrid ►выдел. лев. кн. мыши и перетащить на форму ► на форме появится компонент с именем DBGrid1 18. Переименовать объект DBGrid1 Выделить DBGrid1 | ф. Object Inspector | выбр. Name ← Grid 9 19. Указать объект DataSource в качестве источника данных для таблицы: Выделить Grid | ф. Object Inspector | выбр. DataSource ← DataSource 20. Отрегулировать размеры формы под размеры таблицы. 21. Отредактировать размеры полей таблицы так, чтобы они все поместились на форме: Выделить Grid | ф. Object Inspector | выбр. Columns | кн. […] ►ф. Editing Grid.Columns | кн. Add All Fields ► отобразятся все столбцы; последовательно выбирая каждый столбец, редактировать свойство Width в Object Inspector. 22. Задать компонент навигации по записям таблицы: Tool Palette | Data Controls | TDBNavigator ►выдел. лев. кн. мыши и перетащить на форму ► на форме появится компонент с именем DBNavigator1 23. Переименовать объект DBNavigator1 Выделить DBNavigator1 | ф. Object Inspector | выбр. Name ← Navigator 24. Указать объект DataSource в качестве источника данных для навигатора: Выделить Navigator | ф. Object Inspector | выбр. DataSource ← DataSource 25. Проверить работоспособность приложения с помощью клавиши [F9]. 5. Контрольные вопросы 1. Что такое базы данных? 2. Каковы классы СУБД вы знаете? 3. Что представляют собой настольные СУБД? 4. В чем преимущества СУБД Microsoft Access? 5. Что такое представление? 6. В чем отличие форм от отчетов? 7. Что такое провайдеры данных 6. Содержание и оформление отчета Отчет должен содержать: – титульный лист, название и цель работы; – скриншоты результатов работы с СУБД Microsoft Access; – выводы по работе. 10