В современном мире нужны инструменты, которые бы позволяли хранить, систематизировать и обрабатывать большие объемы информации, с которыми сложно работать в Excel или Word.
Подобные хранилища используются для разработки информационных сайтов, интернет-магазинов и бухгалтерских дополнений. Основными средствами, реализующими данный подход, являются MS SQL и MySQL.
Продукт от Microsoft Office представляет собой упрощенную версию в функциональном плане и более понятную для неопытных пользователей. Давайте рассмотрим пошагово создание базы данных в Access 2007.
Microsoft Access 2007 – это система управления базами данных (СУБД), реализующая полноценный графический интерфейс пользователя, принцип создания сущностей и связей между ними, а также структурный язык запросов SQL. Единственный минус этой СУБД – невозможность работать в промышленных масштабах. Она не предназначена для хранения огромных объемов данных. Поэтому MS Access 2007 используется для небольших проектов и в личных некоммерческих целях.
Но прежде чем показывать пошагово создание БД, нужно ознакомиться с базовыми понятиями из теории баз данных.
Без базовых знаний об элементах управления и объектах, использующихся при создании и конфигурации БД, нельзя успешно понять принцип и особенности настройки предметной области. Поэтому сейчас я постараюсь простым языком объяснить суть всех важных элементов. Итак, начнем:
Теперь, когда в общих чертах есть представление о том, с чем мы будем работать, можно приступить к созданию БД.
Для наглядности всей теории создадим тренировочную базу данных «Студенты-Экзамены», которая будет содержать 2 таблицы: «Студенты» и «Экзамены». Главным ключом будет поле «Номер зачетки», т.к. данный параметр является уникальным для каждого студента. Остальные поля предназначены для более полной информации об учащихся.
Итак, выполните следующее:
Все, теперь осталось только создать, заполнить и связать таблицы. Переходите к следующему пункту.
После успешного создания БД на экране появится пустая таблица. Для формирования ее структуры и заполнения выполните следующее:
Совет! Для тонкой настройки формата данных перейдите на ленте во вкладку «Режим таблицы» и обратите внимание на блок «Форматирование и тип данных». Там можно кастомизировать формат отображаемых данных.
Перед тем, как приступить к связыванию двух сущностей, по аналогии с предыдущим пунктом нужно создать и заполнить таблицу «Экзамены». Она имеет следующие атрибуты: «Номер зачетки», «Экзамен1», «Экзамен2», «Экзамен3».
Для выполнения запросов нужно связать наши таблицы. Иными словами, это некая зависимость, которая реализуется с помощью ключевых полей. Для этого нужно:
Конструктор должен автоматически создать связь, в зависимости от контекста. Если же этого не случилось, то:
Что же делать, если нам нужны студенты, которые учатся только в Москве? Да, в нашей БД только 6 человек, но что, если их будет 6000? Без дополнительных инструментов узнать это будет сложно.
Именно в этой ситуации к нам на помощь приходят SQL запросы, которые помогают изъять лишь необходимую информацию.
SQL синтаксис реализует принцип CRUD (сокр. от англ. create, read, update, delete - «создать, прочесть, обновить, удалить»). Т.е. с помощью запросов вы сможете реализовать все эти функции.
В этом случае в ход вступает принцип «прочесть». Например, нам нужно найти всех студентов, которые учатся в Харькове. Для этого нужно:
А что делать, если нас интересуют студенты из Харькова, стипендии у которых больше 1000? Тогда наш запрос будет выглядеть следующим образом:
SELECT * FROM Студенты WHERE Адрес = «Харьков» AND Стипендия > 1000;
а результирующая таблица примет следующий вид:
Кроме добавления таблицы с помощью встроенного конструктора, иногда может потребоваться выполнение этой операции с помощью SQL запроса. В большинстве случаев это нужно во время выполнения лабораторных или курсовых работ в рамках университетского курса, ведь в реальной жизни необходимости в этом нет. Если вы, конечно, не занимаетесь профессиональной разработкой приложений. Итак, для создания запроса нужно:
CREATE TABLE Преподаватели
(КодПреподавателя INT PRIMARY KEY,
Фамилия CHAR(20),
Имя CHAR (15),
Отчество CHAR (15),
Пол CHAR (1),
Дата_рождения DATE,
Основной_предмет CHAR (200));
где «CREATE TABLE» означает создание таблицы «Преподаватели», а «CHAR», «DATE» и «INT» - типы данных для соответствующих значений.
Внимание! В конце каждого запроса должен стоять символ «;». Без него выполнение скрипта приведет к ошибке.
Здесь все гораздо проще. Снова перейдите в поле для создания запроса и введите следующие команды:
При огромном количестве полей в таблице заполнять базу данных становится сложно. Можно случайно пропустить значение, ввести неверное или другого типа. В данной ситуации на помощь приходят формы, с помощью которых можно быстро заполнять сущности, а вероятность допустить ошибку минимизируется. Для этого потребуются следующие действия:
Все базовые функции MS Access 2007 мы уже рассмотрели. Остался последний важный компонент – формирование отчета.
Отчет – это специальная функция MS Access, позволяющая оформить и подготовить для печати данные из базы данных. В основном это используется для создания товарных накладных, бухгалтерских отчетов и прочей офисной документации.
Если вы никогда не сталкивались с подобной функцией, рекомендуется воспользоваться встроенным «Мастером отчетов». Для этого сделайте следующее:
Таблицы в программе Access 2007 представляют связанную систему. Объединение позволяет вести обработку данных из нескольких таблиц. Для обработки формируются запросы – таблицы, в которых сведения из одной или нескольких таблиц сгруппированы нужным образом, иногда с производством необходимых вычислений. Запросы мы рассмотрим в последующих главах, а здесь поговорим о связях между таблицами.
Схема данных задаёт структуру базы данных. В ней представляются и запоминаются связи между таблицами. Эти связи используются при конструировании запросов и отчётов на основе нескольких таблиц. Схема данных отображает связи графически. Таблицы на схеме представлены в виде прямоугольников со списками полей. Если полей слишком много и они не помещаются в прямоугольник, то автоматически с правой стороны прямоугольника образуется полоса прокрутки , с помощью которой можно просмотреть весь список. Схема данных , используемая в нашей работе, представлена на рис. 6.10.
Рис. 2.11 Виды связей между таблицами: а) один-к-одному, б) один-ко-многим и в) многие-ко-многим
Связи в Access 2007 встречаются трёх видов: а) один-к-одному, б) один-ко-многим и в) многие-ко-многим, как это показано на рис. 2.11. Первый вид связи показывает, что одной записи в Таблице1 соответствует одна же запись в Таблице2 . Такой способ связи применяют, например, для двух таблиц, сделанных из одной, чтобы таблицы не были слишком громоздкими. Тогда Таблица2 – просто продолжение Таблицы1 . Чаще других встречаются связи один-ко-многим. Например, на одной кафедре работает много преподавателей. Поэтому между таблицами Кафедры и Преподаватели устанавливается именно такая связь.
Рис. 2.12 Вкладка Работа с базами данных
Связь типа многие-ко-многим в программе Access 2007 прямо не осуществляется. Чтобы создать такую связь, надо вставить промежуточную таблицу. Например, в нашей базе данных (рис. 6.10) предусмотрена промежуточная таблица Заказано , поскольку между таблицами Клиенты и Товары существует связь многие-ко-многим . Таблица Заказано позволяет избежать такой связи, которая в Access 2007 напрямую не осуществима.
Техника установления связи между таблицами включает в себя три действия: 1) вызов Схемы данных – окна, в котором и будет изображена схема, 2) добавление в окно схемы тех таблиц, между которыми надо установить связи и 3) протягивание связей между таблицами с приданием им необходимых свойств. Рассмотрим эти действия подробно.
Рис. 2.13 Диалоговое окно Добавление таблицы
Схему данных можно вызвать, когда нужные таблицы уже созданы. Для её вызова надо щёлкнуть по кнопке Схема данных на ленте вкладки Работа с базами данных (рис. 2.12). Появится окно Схема данных , пока пустое, и диалоговое окно Добавление таблицы , которое видно на рис. 2.13. С помощью окна Добавление таблицы в окно Схема данных помещают необходимые таблицы.
Рис. 2.14 Контекстное меню, вызванное правой кнопкой мыши, внутри окна Схема данных
Если по каким-то причинам окно Добавление таблицы не появилось, то надо щёлкнуть правой кнопкой в любом месте окна Схема данных . Появится контекстное меню (рис. 2.14). В нём надо щёлкнуть по надписи Добавить таблицу . Появится диалоговое окно Добавление таблицы , которое видно на рис. 2.13.
С появлением диалогового окна Добавление таблицы можно перенести внутрь окна Схема данных нужные таблицы. Мы ограничимся двумя таблицами: Кафедры и Преподаватели . Названия этих таблиц надо выделить, как показано на рис. 2.13, а потом сразу же щёлкнуть по кнопке Добавить . Точно так же поступают и с другими таблицами, которые надо поместить в Схему данных . Окно Добавление таблицы после добавления нужных таблиц следует закрыть. В нашем примере прямоугольники, обозначающие обе нужные нам таблицы, появятся в Схеме данных , как это видно на рис. 2.15.
Обозначения таблиц внутри окна Схема данных содержат список всех полей данной таблицы, причём слева от имени ключевого поля (или ключевых, если их несколько) расположен значок ключ. Обозначения таблиц можно передвигать мышью, ухватив за заголовок таблицы. Можно изменять и размеры прямоугольников, обозначающих таблицы. Для этого надо подвести указатель мыши к одной из границ прямоугольника. Появится двунаправленная стрелка: . Захватив такую стрелку мышью, можно передвинуть границу прямоугольника в любое место, тем самым, изменив его размер.
Рис. 2.15 Законченная Схема данных со связью между таблицами
Когда прямоугольники обозначений таблиц размещены внутри окна Схемы данных , можно приступить к установлению связей между таблицами. Связывают одноимённые поля. В одной из таблиц используют для связи обычно ключевое поле. Та таблица, у которой поле связи ключевое, считается главной. С её стороны связь обозначена 1 . Со стороны связаной таблицы связь обозначена ¥ . Так устанавливается связь Один-ко-многим .
Рис. 2.16 Диалоговое окно Изменение связей
Техника соединения таблиц связями проста: надо щёлкнуть соединяемое поле главной таблицы. Оно выделится. Не отпуская кнопку мыши, надо вести линию к одноимённому полю вспомогательной таблицы. Соединения сначала не произойдёт, а возникнет диалоговое окно Изменение связей (рис. 2.16). Окно помогает утвердить характер связи и настроить целостность данных обеих таблиц. В окне надо убедиться, что связь произошла по одноимённым полям, а затем щёлкнуть по окошечку надписи . В окошечке появится флажок: ü. После этого надо такие же флажки выставить ещё в двух окошечках, находящихся ниже. Таким образом, задаются свойства связи. Свойство Обеспечение целостности данных означает, что удалять данные из ключевого поля главной таблицы нельзя. А свойства Каскадное обновление связанных полей и Каскадной удаление связанных записей – соответственно, что операции редактирования и удаления данных в ключевом поле главной таблицы разрешены, но сопровождаются автоматическим изменениями в связанной таблице. Завершается создание связи щелчком по кнопке [Создать] . Нужная связь появится (рис. 2.15).
Стоит заметить, что в случае, если невозможно осуществить связь с обеспечением целостности данных, например, если проведена связь между полями с различной информацией, появляется окно, изображенное на рис. 2.17.
Рис. 2.17 Окно с предупреждением о невозможности создания связи
Microsoft Access 2007
Логические связи устанавливаются между одноименными полями таблиц базы данных Access 2007. Связь данных в одной таблице с данными в других таблицах осуществляется через уникальные идентификаторы (ключи) или ключевые поля. В нашем случае мы должны установить логические связи между таблицами: Группы студентов, Студенты, Дисциплины и Успеваемость.
Для установления связей используем ключевые поля: КодГруппы, КодСтудентов и КодДисциплины. Например, между первичным ключом (КодГруппы) tables Группы студентов и вторичным ключом (КодГруппы) tables Студенты устанавливаем связь один - ко - многим.
Прежде чем приступить к созданию логических связей надо в Окне редактирования закрыть все tables и перейти на вкладку Работа с базами данных. Затем щелкнуть на пиктограмме Схема данных, в окне редактирования появится активное диалоговое окно "Добавление таблицы" на фоне неактивного окна Схема данных (рис. 1).
Рис. 1.
В окне Добавление таблиц необходимо выделить имена таблиц и нажать кнопку Добавить, при этом в окне "Схема данных" появятся все tables (рис. 2). После этого необходимо закрыть окно диалога.
Рис. 2.
Далее необходимо установить связи между табл. в окне Схема данных. Для этого в окне Схема данных необходимо отбуксировать (переместить) поле КодГруппы из таблицы Группы студентов на соответствующее поле tables Студенты, в результате этой операции появится окно "Изменение связей" (рис. 3) .
Рис. 3.
В появившемся окне диалога "Изменение связей" (рис. 3) необходимо установить флажки: "Обеспечить целостность данных", "каскадное обновление связанных полей" и "каскадное удаление связанных записей", убедиться в том, что установлен тип отношений один-ко-многим и нажать кнопку Создать.
В окне Схема данных появится связь один-ко-многим между таблицами Группы студентов и Студенты. Аналогичным образом надо связать поля КодСтудента в таблицах Студенты и Успеваемость, а затем поля КодДисциплины в таблицах Успеваемость и Дисциплины. В итоге получим Схему данных, представленную на рисунке 4.
Рис. 4.
После установки связей между таблицами, окно Схема данных необходимо закрыть. Далее необходимо осуществить заполнение всех таблиц. Заполнение целесообразно начинать с табл. Группы студентов, так как поле КодГруппы табл. Студенты используется в качестве столбца подстановки для заполнения соответствующего поля табл. Студенты.
Затем установить связи между табл. "Студенты" и "Успеваемость", "Дисциплины" и "Успеваемость", так как поля КодСтуденты и КодДисциплины табл. Успеваемость используется в качестве столбца подстановки для заполнения соответствующих полей таблицы Успеваемость.
Окно "Схема данных" позволяет определить отношение между элементами, хранящимися в нескольких таблицах Access. Она доступна, если щелкнуть инструменты для работы с базами данных _гт_ связей .
Отношения подобны правилам, регулирующим связь данных в базе данных. Например, в хорошо нормализованной базе данных обработки заказов, вероятнее всего, у вас есть сведения о клиенте в одной таблице и сведения о заказе в другой таблице. Вы хотите убедиться, что клиенты не отделены от своих заказов, верно? И вы не хотите, чтобы заказ был создан без действительного клиента, подключенного к нему. Окно "Схема данных" позволяет настроить эти правила так, чтобы они были применены ко всей БД.
Если вы уже создали запрос Access , обратите внимание на то, что окно Схема данных выглядит примерно так же, как и в верхней части построителя запросов.
В окне "Схема данных" вы можете добавлять таблицы в представление с помощью команд на вкладке " конструктор ", а затем перетаскивать поля между таблицами для настройки связей. В этом примере связь позволяет подключаться к каждому клиенту с несколькими заказами, но она не позволяет создавать заказы для несуществующих клиентов. После настройки этих правил в окне "Схема данных" они будут применены ко всей БД (например, при создании нового запроса соединения будут автоматически настроены в соответствии с правилами отношений).
Примечание: Удаление таблицы из окна "Схема данных" не приведет к ее удалению из нее, а также к удалению уже установленных связей.
Как это сделать |
|
---|---|
Добавление таблицы или запроса в окно |
Нажмите кнопку Конструктор _Гт_ Show Table , выберите нужную таблицу или запрос, а затем нажмите кнопку добавить . |
Удаление таблицы или запроса из окна |
Выберите таблицу или запрос, а затем нажмите клавишу DELETE. |
Скрытие таблицы или запроса |
Щелкните таблицу или запрос правой кнопкой мыши и выберите команду Скрыть таблицу . |
Создание связи |
Перетащите поле из одной таблицы или одного запроса в соответствующее поле другой таблицы или запроса. |
Настройка свойств связи |
Щелкните правой кнопкой мыши строку связи между двумя таблицами (это может занять несколько попыток, а затем выберите команду изменить связь ). |
Удаление связи |
Щелкните правой кнопкой мыши строку связи между двумя таблицами (это может занять несколько попыток), а затем нажмите кнопку Удалить . |
Показать все отношения |
Нажмите кнопку конструктор _Гт_ все связи . |
Просмотр связей для определенной таблицы |
Выберите таблицу и нажмите кнопку конструктор _Гт_ прямые связи . |
Просмотр связей для одной таблицы без просмотра связей для других таблиц |
Щелкните конструктор _гт_ инструменты _гт_ Очистить макет . Добавьте таблицу, для которой вы хотите просмотреть отношения (конструктор _гт_ связей _гт_ Отображение таблицы ), а затем выберите пункт проектирование _гт_ связей _гт_ прямых отношений . |
Теперь, когда вы захотите ускорить работу с окном "Схема данных", Узнайте, как
Основными объектами схемы являются таблицы и связи.
Есть и другое понятие схемы в теории баз данных.
В Oracle она привязывается только к одному пользователю (USER) и является логическим набором объектов базы данных. Схема создается при создании пользователем первого объекта, и все последующие объекты созданные этим пользователем становятся частью этой схемы.
Она может включать другие объекты, принадлежащие этому пользователю:
Существуют и подобъекты схемы, такие как:
Существуют объекты не зависимые от схемы
Wikimedia Foundation . 2010 .
Схема базы данных - 53. Схема базы данных Data base scheme Описание базы данных в контексте конкретной модели данных Источник: ГОСТ 20886 85: Организация данных в системах обработки данных. Термины и определения …
концептуальная схема базы данных - концептуальная схема Схема базы данных, определяющая представление базы данных, единое для всех ее приложений и не зависящее от используемого в системе управления этой базой данных представления данных в среде хранения и путей доступа к ним.… …
Концептуальная схема базы данных - 56. Концептуальная схема базы данных Концептуальная схема Conceptual scheme Схема базы данных, определяющая представление базы данных, единое для всех ее приложений и не зависящее от используемого в системе управления этой базой данных… … Словарь-справочник терминов нормативно-технической документации
внешняя схема базы данных - внешняя схема Схема базы данных, поддерживаемая системой управления базы данных для приложений. [ГОСТ 20886 85] Тематики организация данных в сист. обраб. данных Синонимы внешняя схема EN external scheme … Справочник технического переводчика
Внешняя схема базы данных - 54. Внешняя схема базы данных Внешняя схема External scheme Схема базы данных, поддерживаемая системой управления базы данных для приложений Источник: ГОСТ 20886 85: Организация данных в системах обработки данных. Термины и определения … Словарь-справочник терминов нормативно-технической документации
внутренняя схема базы данных - внутренняя схема Схема базы данных, определяющая представление данных в среде хранения и пути доступа к ним. [ГОСТ 20886 85] Тематики организация данных в сист. обраб. данных Синонимы внутренняя схема EN internal scheme … Справочник технического переводчика
Внутренняя схема базы данных - 55. Внутренняя схема базы данных Внутренняя схема Internal scheme Схема базы данных, определяющая представление данных в среде хранения и пути доступа к ним Источник: ГОСТ 20886 85: Организация данных в системах обработки данных. Термины и… … Словарь-справочник терминов нормативно-технической документации
Распределённые базы данных (РБД) совокупность логически взаимосвязанных баз данных, распределённых в компьютерной сети. Основные принципы РБД состоит из набора узлов, связанных коммуникационной сетью, в которой: а)каждый узел это полноценная СУБД … Википедия
В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете … Википедия
Логическая схема модель данных специфической области вопросов, выраженная в понятиях технологии управления данными. Не будучи продуктом исключительно теории управления базами данных, она оперирует терминами и понятиями или реляционных таблиц и… … Википедия