Главная страница
Навигация по странице:

  • 12.7. Многотабличные базы данных. Отношения между таблицами

  • Создание связей между таблицами

  • 12.8. Работа с данными при помощи запросов

  • Выбор данных из одной таблицы

  • Включение полей в запрос

  • Итоговые функции Access

  • инфа. Информатика Глава 12. Базы данных 12 Понятие о базах данных


    Скачать 402.87 Kb.
    НазваниеБазы данных 12 Понятие о базах данных
    Дата27.05.2022
    Размер402.87 Kb.
    Формат файлаdocx
    Имя файлаИнформатика Глава 12.docx
    ТипГлава
    #552843
    страница2 из 4
    1   2   3   4

    Типы данных

    Текстовый формат

    Размер текстового поля может находиться в пределах от 1 до 255 символов.
    Числовой формат

    Тип числового поля может принимать значения из следующего списка:

    байт – целые числа в пределах от 0 до 255;

    целое – целые числа от –32768 до 32767;

    длинное целое – целые числа от – 2147483648 до 2147483647;

    с плавающей точкой (4 байта) – числа в пределах от –3,402823ЕЗ8 до 3,402823ЕЗ8;

    с плавающей точкой (8 байт) – числа в пределах от 1,79769313486232ЕЗ08 до 1,79769313486232ЕЗ08;
    Формат «Дата/Время»

    Для типа данных Дата/Время существует набор форматов поля, приведенный ниже вместе с примерами:



    Денежный формат

    По умолчанию денежный формат представляет собой числа, записанные с двумя знаками после запятой, с разделением групп разрядов и обозначением «р.» в конце. Пользователь может записать в строке Формат поля шаблон для своего формата. Допустим, необходимо вводить суммы в долларах. Тогда надо установить курсор на слово Денежный и заменить его шаблоном формата, например таким: # ###$.
    Формат «счетчик»

    Поля типа «счетчик» выполняют определенную функцию – автоматическую идентификацию записей таблицы. Поэтому свойств, которые можно было бы изменить, у такого поля немного. Во-первых, счетчик – это всегда число. Во-вторых, наращивание его значения происходит автоматически. Access предлагает два варианта изменения счетчика: последовательный и случайный. Первый вариант удобен тем, что позволяет нумеровать записи. Второй вариант можно использовать, если надо создать систему кодирования записей в таблице, защищенную от неосторожных действий оператора.
    Логический формат

    Ячейка в поле логического типа может содержать только одно из двух значений: Да или Нет. Access предлагает еще два варианта названий логического типа: Истина/Ложь и Включено/Выключено. Вне зависимости от того, какой формат поля вы изберете, в таблице логическое поле будет представлено в виде набора флажков. Когда вы щелкаете флажок мышью, это приводит к тому, что в квадрате появляется изображение галочки, что соответствует логическому значению Да



    Сброс флажка означает присвоение ячейке поля логического значения Нет. Использование логических полей может быть различным, например, в анкетах или для создания элементов управления.
    Поле объекта OLE

    Поле объекта OLE (Object Linking and Embedding) – последний выбираемый из списка тип поля. Он имеет всего два свойства: подпись и параметр «обязательное поле». Поля данного типа не хранят информацию как таковую, а содержат ссылки на объекты, которые могут быть включены в БД с использованием OLE-протокола обмена данными. Такими объектами могут быть, например, графические файлы.

    Для того чтобы внедрить в ячейку поля OLE-объект, надо установить на нее курсор и, нажав правую кнопку мыши, вызвать контекстное меню. В нем выберите команду Вставить объект. Программа раскроет окно диалога для выбора типа объекта. Объект в данном случае отождествляется с приложением, в котором он может быть создан или отредактирован.

    Второй вариант вставки объекта – выбор переключателя Создать из файла в окне Вставка объекта. В этом случае подразумевается, что файл уже существует, и нужно установить с ним связь. Access откроет окно открытия документа и после выбора нужного файла определит, какое приложение необходимо открыть для работы с ним.
    Гиперссылка

    Текст или комбинация текста и чисел, используемая как адрес гиперссылки.

    Адрес – это текст, задающий путь и имя файла для открываемого документа. Путь может представлять собой путь к файлу, записанному на жестком диске, являться адресом в формате UNC или адресом URL в Интернете.

    Для вставки адреса в поле можно использовать команду Гиперссылка в меню Вставка.

    12.7. Многотабличные базы данных. Отношения между таблицами

    Реляционные базы данных состоят из нескольких таблиц, связь между которыми устанавливается с помощью совпадающих полей. Каждая запись в таблицах идентифицирует один объект. Отношение между объектами определяет отношение между таблицами. Существует 4 типа отношений:

    1. Отношение «один к одному» означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице. Одному гражданину страны соответствует только один номер паспорта, в то же время как один номер паспорта соответствует только одному человеку.

    2. Отношение «один ко многим» означает, что каждой записи в одной таблице соответствует одна или несколько записей в другой таблице. Один абитуриент может поступать во многие вузы и в тоже время в один вуз может поступать много абитуриентов.

    3. Отношение «многие ко многим» возникает между двумя таблицами в тех случаях, когда:

    • одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы;

    • одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы.

    Например, связь между преподавателями и группами студентов. Несколько преподавателей ведут занятия в нескольких группах, и несколько групп занимаются у нескольких преподавателей.

    В большинстве случаев любые две таблицы связаны отношением «один – ко многим».

    Создание связей между таблицами

    Для того чтобы рассмотреть создание связей между таблицами построим в базе данных «Профконсультант» еще две таблицы:

    1. Таблица тАбитуриенты:



    КодАб является ключевым полем.
    2. Таблица пересечения тСвязьАбВУЗ:



    Первые два поля являются ключевыми, причем для таблицы тСвязь-Абвузы они являются чужими ключами.



    Рисунок 12.6. Схема данных
    Чтобы определить связи, необходимо использовать команду Сервис->Схема данных (кнопка



    ). Если связь определяется впервые в базе данных, то Access откроет пустое окно Схема данных, а затем выведет на экран окно диалога Добавление таблицы. В этом окне необходимо выделить нужные таблицы и нажать кнопку Добавить. В нашем случае в окно схемы данных надо добавить все три таблицы. Кнопка Закрыть закрывает окно диалога Добавление таблицы (данное окно можно вызвать по нажатию кнопки



    ). После этого окно Схемы данных должно выглядеть примерно так, как показано на рис. 3 (кроме линий соединения). Чтобы установить связь между таблицами твузы и тСвязьАбвуз, надо выделить поле Кодвуза в таблице твузы (щелкнуть левой кнопкой «мыши»), перетащить и опустить его на поле Кодвуза в таблице тСвязьАбвуз. Аналогично устанавливается связь между двумя другими таблицами.

    Когда вы отпустите кнопку мыши, Microsoft Access откроет окно диалога Связи, представленное на рис. 12.7.



    Рисунок 12.7. Настройка связей между полями таблиц
    После установки флажка Обеспечение целостности данных, Access делает доступными еще два флажка: Каскадное обновление связанных полей и Каскадное удаление связанных записей. При установленном флажке Каскадное обновление связанных полей Microsoft Access обновляет все значения чужих ключей в дочерних таблицах (то есть в таблицах на стороне отношения «многие» при связи «один ко многим») при изменении значения первичного ключа в родительской таблице, которая находится на стороне отношения «один» при связи «один ко многим». Если же вы установите флажок Каскадное удаление связанных записей, Microsoft Access удалит дочерние строки (связанные строки в дочерних таблицах) при удалении родительской строки (связанная строка в родительской таблице). Установите флажок Каскадное обновление связанных полей, чтобы при изменении кода вуза Access автоматически обновлял записи в таблице тСвязьАбвуз.

    После нажатия кнопки Создать Access создаст связь и нарисует линию между двумя таблицами, указывающую на наличие связи между ними. Заметьте: когда вы просите обеспечить целостность данных, Access изображает на конце линии у таблицы, находящейся на стороне отношения «один», цифру 1, а на другом конце у таблицы со стороны отношения «многие» – символ бесконечности. Чтобы удалить связь, щелкните по ее линии и нажмите клавишу Del. Если вы хотите отредактировать или изменить существующую связь, дважды щелкните по соответствующей линии, чтобы снова открыть окно диалога Связи.

    12.8. Работа с данными при помощи запросов

    В режиме таблицы доступны самые разные операции с данными – просмотр, сортировка, фильтрация, обновление и печать. Однако очень часто приходится проводить вычисления или просматривать данные из нескольких таблиц. Отобрать нужные данные можно с помощью запросов.

    После выполнения запроса на выборку (который отбирает информацию из таблиц и других запросов базы данных, в то время как при выполнении запросов на изменение данные вставляются, обновляются или удаляются) Access создает набор записей, содержащий отобранные данные. Однако в отличие от реальной таблицы, этот набор записей физически не существует в базе данных. Access создает набор записей из данных таблицы только во время выполнения запроса.

    Выбор данных из одной таблицы

    Одним из преимуществ запросов является то, что они позволяют достаточно быстро отобрать необходимые данные из нескольких связанных таблиц. Но запросы полезны и при работе с одной таблицей. Все приемы, используемые при работе с единственной таблицей, годятся и для сложных многотабличных запросов, поэтому мы начнем с запросов на выборку данных одной таблицы.

    На рис. 12.8 показан запрос в режиме конструктора. Окно конструктора запросов разделено на две части. В верхней находятся списки полей таблиц или запросов, на основе которых создается новый запрос. В нижней располагается бланк QBE (Query By Example – запрос по образцу), в котором выполняется вся работа по созданию запроса. Каждый столбец бланка представляет одно поле, используемое в запросе. Поле может просто принадлежать одной из таблиц, быть вычисляемым (иными словами, его значение рассчитывается на основе одного или нескольких полей таблицы) или итоговым, то есть использующим одну из встроенных функций Microsoft Access.



    Рисунок 12.8. Запрос в режиме Конструктор
    Первая строка бланка запроса служит для выбора полей, которые должны присутствовать в наборе записей, используется для сортировки данных или для выбора информации из таблицы. Полям запроса можно присвоить имена, которые будут отображаться в заголовках столбцов при выводе набора записей запроса, а для генерации вычисляемых полей можно использовать выражения любой степени сложности.

    Если была выполнена команда Вид->Имена таблиц, во второй строке бланка запроса Access выведет имя таблицы, из которой выбрано поле. В третьей строке бланка можно задать сортировку по возрастанию или по убыванию.

    Флажки в строке бланка Вывод на экран отвечают за вывод полей в наборе записей. По умолчанию выводятся все поля, включенные в бланк Запроса.

    Для ввода условия отбора записей используется строка Условие отбора и строки или. На рис. 12.5 показан запрос на выборку фамилий тех студентов, которые имеют оценки от 4 до 5 баллов.

    Включение полей в запрос

    Первым шагом при создании запроса является выбор полей, включаемых в набор записей. Можно просто перетащить поле с помощью мыши в нужный столбец бланка из списка полей верхней части окна. При перетаскивании поля указатель мыши превращается в маленький прямоугольник.

    Вычисляемые поля

    С любыми полями таблицы можно выполнять вычисления и сделать вычисляемое выражение новым полем в наборе записей, при этом можно использовать любые из встроенных функций Access. Кроме того, поля запроса могут содержать данные, получаемые с помощью арифметических операций над полями таблицы. Например ЦенаТовара*Количество.

    Вычисляемое поле может содержать вызовы встроенных функций Access и следующие операторы:

    "+" – складывает два арифметических выражения;

    "– " – вычитает из первого арифметического выражения второе;

    "*" – перемножает два арифметических выражения;

    "/" – делит первое арифметическое выражение на второе;

    "\" – округляет два арифметических выражения до целых значений и делит первое на второе, результат округляется до целого;

    "^" – возводит первое арифметическое выражение в степень, задаваемую вторым арифметическим выражением;

    «MOD» – округляет оба арифметических выражения до целых значений, делит первое на второе и возвращает остаток;

    «&» – создает текстовую строку как результат присоединения второй строки к концу первой. Если один из операндов является числом, то оно автоматически преобразуется в строку символов.

    На рис. 12.9 показан пример вычисляемого поля для таблицы тАттестат. Вычисляемое поле Среднее выводит средний балл по трем предметам: Русский, Математика, Физика.



    Рисунок 12.9. Вычисляемое поле

    Итоговые запросы

    Для вычисления итоговых значений надо нажать кнопку Групповые операции



    чтобы в бланке QBE появилась строка Групповые операции.

    Access предоставляет девять функций, обеспечивающих выполнение групповых операций. Вы можете задать нужную вам функцию, введя ее имя с клавиатуры в строке Групповая операция бланка запроса или выбрав ее в раскрывающемся списке.
    Итоговые функции Access:

    Sum – вычисляет сумму всех значений заданного поля в каждой группе.

    Avg – вычисляет среднее арифметическое всех значений данного поля в каждой группе.

    Min – возвращает наименьшее значение, найденное в этом поле внутри каждой группы.

    Max – возвращает наибольшее значение, найденное в этом поле внутри каждой группы.

    Count – возвращает число записей, в которых значения данного поля отличны от Null.

    StDev – стандартное отклонение всех значений данного поля в каждой группе.

    Var – вычисляет дисперсию значений данного поля в каждой группе.

    First – возвращает первое значение этого поля в группе.

    Last – возвращает последнее значение этого поля в группе.

    На рис. 12.10 показан пример запроса с применением групповой операции Sum. Данный запрос является многотабличным и позволяет определить сумму выплат, сделанных каждым абитуриентом.



    Рисунок 12.10. Окно запроса с применением групповой операции

    Перекрестные запросы

    Access поддерживает особый тип итоговых запросов, называемый перекрестными запросами. Они позволяют увидеть вычисляемые значения в виде перекрестной таблицы, напоминающей электронную (рис. 12.11).

    Для построения перекрестного запроса выделите имя нужной таблицы в окне базе данных и выберите Новый запрос в раскрывающемся списке кнопки Новый объект



    на панели инструментов. В окне диалога Новый запрос выберите Конструктор, а затем в окне конструктора выберите команду Запрос->Перекрестный. Access добавит в бланк запроса строку Перекрестная таблица. В этой строке для каждого поля перекрестного Запроса может быть выбрана одна из четырех установок: Заголовки строк, Заголовки столбцов, Значение (выводимое в ячейках перекрестной таблицы) и Не отображается. Для перекрестного запроса надо определить, по крайней мере, одно поле в качестве заголовков строк, одно для заголовков столбцов и одно поле значений. Каждое поле, являющееся заголовком столбцов, должно иметь в строке Групповая операция установку Группировка. Для поля, использующегося в качестве заголовков строк, в строке Групповая операция должна быть установлена операция Группировка, выбрана одна из итоговых функций (Count, Min, и т. д.) или введено выражение, содержащее итоговую функцию. Для поля с установкой Значение выбирается одна из итоговых функций или вводится выражение, использующее итоговую функцию.

    Построить перекрестный запрос можно другим, более простым способом, с помощью мастера. Для этого в окне диалога Новый запрос надо выделить пункт Перекрестный запрос и нажать Ok. Затем мастер выведет на экран последовательно ряд окон, в которых запросит необходимые данные для построения перекрестного запроса. Пример результата выполнения перекрестного запроса показан на рис. 12.11.




    Рисунок 12.11. Результаты перекрестного запроса

    12.9. Построение и применение форм

    Формы являются основным средством организации интерфейса пользователя в приложениях Microsoft Access.
    1   2   3   4


    написать администратору сайта