часу
Microsoft Access зберігає значіння дат і часу як числа з плаваючою комою і з подвійною точністю. Значіння з лівого боку від десяткової коми відповідає даті, а дробова частина числа представляє час доби.
Щоб повідомити Access про те, що вводиться дата і час, значення вміщується в символи числа (#). Наприклад, #10 Квітень 2003# і #10/04/03# визначають одну і ту саму дату.
Access дає декілька функцій, які можна використовувати при завданні умов відбору для дат і часу:
Day(дата). Повертає значення дня місяця в діапазоні від 1 до 31.
Month(дата). Повертає значення місяця року в діапазоні від 1 до 12.
Year(дата). Повертає значення року в діапазоні від 100 до 9999.
Weekday(дата). Повертає значення чисел від 1 (Неділя) до 7 (Субота), які відповідають дням тижня.
Hour(дата). Повертає ціле число від 0 до 23, які представляють значення часу.
DatePart(інтервал, дата). Повертає номер кварталу або номер тижня в залежності від того, який код інтервалу задається (“q” - для визначення кварталу, “ww” - для визначення порядкового номера тижня в році).
Date(). Повертає поточну системну дату.
Використання параметрів запиту
До сих пір ми вводили умови відбору безпосередньо в бланк запиту в режимі конструктора. Але на етапі створення запиту на завжди можна визначити, які значіння повинен відшукувати Access. Потрібно включити в запит параметр, і при кожному виконанні запиту Access буде вимагати конкретні умови відбору.
Щоб визначити параметр, потрібно ввести в рядок Условие отборазамість конкретного значення ім’я або фразу, яка вміщена в квадратні дужки. Те, що вміщене всередині квадратних дужок, Access розглядає як ім’я параметра. Воно виводиться в вікні діалогу при виконанні запиту, тому в якості імені параметра розумно використовувати змістовну фразу. В одному запиті можна задати декілька параметрів, при цьому ім’я кожного параметру повинно бути унікальним і інформативним.
Для кожного параметра запиту можна вказати тип даних. Access використовує цю інформацію для перевірки введеного значення. Наприклад, якщо визначено параметр як числовий, Access відкине літерні символи в значенні параметра. З мовчазної згоди Access надає параметрам запиту текстовий тип даних. Якщо потрібно змінити тип даних, треба вибрати команду Запрос/Параметры, і Access виведе на екран вікно діалогу Параметры запроса. В цьому вікні діалогу вводиться ім’я кожного параметра, тип якого ми хочемо визначити, в стовпчик Параметрв такому вигляді, в якому воно було вказане в бланку запиту, але без квадратних дужок. В стовпчику Тип данныхтреба встановити потрібний тип даних, який вибирається зі списку, що розкривається. Після визначення всіх параметрів натискаємо кнопку ОК.
При виконанні запиту Access попросить ввести почергово значення для кожного з параметрів, використовуючи вікно діалогу.
Багатотабличні запити
Розглянувши можливості запитів, які основані на одній таблиці, на базі отриманих знань легко організувати перегляд об’єднаних даних з декількох пов’язаних таблиць. Здатність запитів відбирати дані з декількох таблиць особливо корисна при створенні форм і звітів.
Розглянемо приклад, в якому об’єднується інформація з двох таблиць. В вікні бази даних треба перейти на вкладку Запросыі натиснути кнопку Создать. В вікні діалогу Новый запросвибрати Конструкторі натиснути кнопку ОК. Access відкриє вікно нового запиту в режимі конструктора і виведе на екран вікно діалогу Добавление таблицы. Вікно діалогу дозволяє вибрати таблиці і запити, які будуть базовими для нового запиту. Вибираються дві таблиці і закривається вікно.
Якщо зв’язок між базовими таблицями був раніше визначений, то верхня частина вікна запиту в режимі конструктора буде виглядати так, як показано
Мал. 2. Конструкторзапиту
на мал. 2. Access пов’язує використовувані в запиті таблиці на основі інформації про зв’язок, яка задана при їх створенні. Access зв’язок в вигляді лінії, яка з’єднує первинний ключ одної таблиці з відповідним полем іншої. Якщо зв’язок між таблицями не визначений, Access сам прийме рішення, встановивши зв’язок між полями з однаковими іменами і співпадаючими типами даних.
Користувач включає в бланк запиту необхідні поля з двох таблиць. Побачити результат запиту можна, переключившись у режим таблиці.
Як уже згадувалося, вікні режиму таблиці можна виконувати з набором записів запиту майже всі дії, які доступні для звичайних таблиць.
Одним з найцікавіших аспектів багатотабличних запитів є можливість зміни даних вихідних таблиць прямо в наборі записів.
Створення запиту на основі іншого запиту
При створенні запита в режимі конструктора вікно діалогу Добавлениетаблицыдозволяє вибрати в якості джерела даних для нового запиту не тільки таблиці, але і запити. Дійсно, побудова одного запиту на основі іншого - це ще один спосіб роботи з даними з декількох таблиць: спочатку створюється один запит, за допомогою якого вирішується визначене коло задач і відбирається сукупність даних з декількох таблиць, а потім на його основі будується інший для отримання кінцевого набору записів.
Використання майстра запитів
1.
В вікні бази даних перейти на вкладку Запросыі натиснути кнопку Создать.
. В діалоговому вікні Новыйзапросвибрати майстра Простой запрос (мал. 3). Натиснути ОК.
3. В діалоговому вікні (мал. 4), що з’явилося, вказати ім’я таблиці або запита, на якому буде збудований новий запит. Потім вибрати поля, з яких повинні бути відновлені дані.
Мал. 4. Створення простого запиту
Якщо необхідно, вказати додаткові таблиці або запит, а потім вибрати з них поля, які повинні бути використані.
4. Закінчивши роботу в цьому діалоговому вікні, натиснути ОК. Потрібно слідувати інструкціям, які виникають в наступних діалогових вікнах майстра. В останньому діалоговому вікні користувачу пропонується вибір виконати запит або продивитися його структуру в режимі конструктора. Якщо отриманий запит не відповідає вимогам, можна знову звернутися до майстра або внести зміну в запит в режимі конструктора.
Відкриття, копіювання, збереження, перейменування і видалення запитів
Користувач може відкрити в режимі конструктора різні запити: запит на вибірку, перехресний запит і запит на зміну.