MS Access - Краткое руководство

Microsoft Access - это система управления базами данных (СУБД) от Microsoft, которая сочетает в себе реляционный Microsoft Jet Database Engine с графическим пользовательским интерфейсом и средствами разработки программного обеспечения. Он входит в набор приложений Microsoft Office, включенных в профессиональную и более поздние версии.

  • Microsoft Access - это лишь часть общей стратегии Microsoft по управлению данными.

  • Он хранит данные в собственном формате на основе ядра СУБД Access Jet.

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

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

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

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

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

  • Access может работать с большинством популярных баз данных, поддерживающих стандарт Open Database Connectivity (ODBC), включая SQL Server, Oracle и DB2.

  • Разработчики программного обеспечения могут использовать Microsoft Access для разработки прикладного программного обеспечения.

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

  • Database Creation - Создайте свою базу данных Microsoft Access и укажите, какие данные вы будете хранить.

  • Data Input - После создания базы данных данные каждого рабочего дня можно вводить в базу данных Access.

  • Query - Это причудливый термин для описания процесса извлечения информации из базы данных.

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

Архитектура

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

  • Если вы работали с другими системами баз данных на настольных компьютерах, возможно, вы видели термин «база данных», используемый для обозначения только тех файлов, в которых вы храните данные.

  • Но в Access база данных рабочего стола (.accdb) также включает все основные объекты, связанные с хранящимися данными, включая объекты, которые вы определяете для автоматизации использования ваших данных.

Microsoft Access имеет внешний вид других продуктов Microsoft Office в том, что касается его компоновки и навигационных аспектов, но MS Access - это база данных, а точнее, реляционная база данных.

  • До MS Access 2007 расширение файла было *.mdb, но в MS Access 2007 расширение было изменено на *.accdb расширение.

  • Ранние версии Access не могут читать расширения accdb, но MS Access 2007 и более поздние версии могут читать и изменять более ранние версии Access.

  • База данных рабочего стола Access (.accdb или .mdb) - это полнофункциональная СУБД.

  • Он предоставляет все функции определения данных, манипулирования данными и управления данными, которые необходимы для управления большими объемами данных.

  • Вы можете использовать настольную базу данных Access (.accdb или .mdb) как автономную СУБД на одной рабочей станции или в режиме общего клиент / сервер по сети.

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

  • Когда вы создаете приложение с базой данных рабочего стола Access, Access - это СУБД.

Определение данных

Давайте теперь поймем, что такое определение данных -

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

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

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

  • РСУБД позволяет вам определять, какие данные у вас есть и как они должны храниться.

  • Вы также можете обычно определять правила, которые СУБД может использовать для обеспечения целостности ваших данных.

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

Манипуляция данными

Работа с данными в РСУБД сильно отличается от работы с данными в текстовом редакторе или программе для работы с электронными таблицами.

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

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

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

  • РСУБД предоставляет множество способов работы с вашими данными. Например,

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

  • Вы можете обновить одно поле или несколько записей с помощью одной команды.

  • Вы можете писать программы, которые используют команды СУБД для извлечения данных, которые вы хотите отобразить, и позволять пользователю обновлять данные.

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

Контроль данных

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

  • Когда вам нужно поделиться своей информацией с другими, СУБД дает вам гибкость, позволяя нескольким пользователям читать или обновлять ваши данные.

  • РСУБД, которая предназначена для совместного использования данных, также предоставляет функции, гарантирующие, что два человека не могут изменять одни и те же данные одновременно.

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

  • Вы также можете быть уверены, что никто другой не сможет просмотреть какую-либо часть заказа, пока вы не введете его полностью.

  • Поскольку вы можете делиться своими данными Access с другими пользователями, вам может потребоваться установить некоторые ограничения на то, что различным пользователям разрешено просматривать или обновлять.

MS Access использует «объекты», чтобы помочь пользователю составить список и организовать информацию, а также подготовить специально разработанные отчеты. При создании базы данных Access предлагает вам таблицы, запросы, формы, отчеты, макросы и модули. Базы данных в Access состоят из многих объектов, но следующие основные объекты -

  • Tables
  • Queries
  • Forms
  • Reports

Вместе эти объекты позволяют вводить, хранить, анализировать и компилировать ваши данные. Вот краткое изложение основных объектов в базе данных Access;

Стол

Таблица - это объект, который используется для определения и хранения данных. Когда вы создаете новую таблицу, Access просит вас определить поля, которые также известны как заголовки столбцов.

  • Каждое поле должно иметь уникальное имя и тип данных.

  • Таблицы содержат поля или столбцы, в которых хранятся различные типы данных, такие как имя или адрес, а также записи или строки, которые собирают всю информацию о конкретном экземпляре темы, например, всю информацию о клиенте или сотруднике и т. Д.

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

Запрос

Объект, который предоставляет настраиваемое представление данных из одной или нескольких таблиц. Запросы - это способ поиска и компиляции данных из одной или нескольких таблиц.

  • Выполнение запроса похоже на подробный вопрос о вашей базе данных.

  • При создании запроса в Access вы определяете конкретные условия поиска, чтобы найти именно те данные, которые вам нужны.

  • В Access вы можете использовать графический запрос в качестве примера средства или вы можете написать операторы языка структурированных запросов (SQL) для создания ваших запросов.

  • Вы можете определить запросы для выбора, обновления, вставки или удаления данных.

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

Форма

Форма - это объект в базе данных настольного компьютера, предназначенный в первую очередь для ввода или отображения данных или для управления выполнением приложения. Вы используете формы для настройки представления данных, которые ваше приложение извлекает из запросов или таблиц.

  • Формы используются для ввода, изменения и просмотра записей.

  • Причина, по которой формы используются так часто, заключается в том, что они помогают людям правильно вводить данные.

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

Отчет

Отчет - это объект в настольных базах данных, предназначенный для форматирования, расчета, печати и обобщения выбранных данных.

  • Вы можете просмотреть отчет на экране перед его печатью.

  • Если формы предназначены для ввода, то отчеты предназначены для вывода.

  • Все, что вы планируете напечатать, заслуживает отчета, будь то список имен и адресов, финансовая сводка за период или набор почтовых этикеток.

  • Отчеты полезны, потому что они позволяют вам представить компоненты вашей базы данных в удобном для чтения формате.

  • Вы даже можете настроить внешний вид отчета, чтобы сделать его визуально привлекательным.

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

Другие объекты MS Access

Давайте теперь посмотрим на другие объекты MS Access.

Макрос

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

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

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

  • Вы также можете запускать другие макросы или процедуры Visual Basic из макроса.

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

  • Макросы данных в веб-приложениях также могут быть автономными объектами, которые можно вызывать из других макросов данных или макрообъектов.

Модуль

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

  • Все, что можно сделать в макросе, также можно сделать в модуле, но вы не получите интерфейс макроса, который подсказывает вам, что необходимо для каждого действия.

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

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

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

Чтобы создать базу данных из шаблона, нам сначала нужно открыть MS Access, и вы увидите следующий экран, на котором отображаются различные шаблоны базы данных Access.

Чтобы просмотреть все возможные базы данных, вы можете прокрутить вниз или воспользоваться окном поиска.

Давайте введем проект в поле поиска и нажмем Enter. Вы увидите шаблоны базы данных, связанные с управлением проектами.

Выберите первый шаблон. Вы увидите дополнительную информацию, относящуюся к этому шаблону.

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

Теперь нажмите кнопку «Создать». Access загрузит этот шаблон базы данных и откроет новую пустую базу данных, как показано на следующем снимке экрана.

Теперь щелкните панель навигации слева, и вы увидите все другие объекты, которые поставляются с этой базой данных.

Щелкните «Навигация по проектам» и выберите в меню «Тип объекта».

Теперь вы увидите все типы объектов - таблицы, запросы и т. Д.

Создать пустую базу данных

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

Step 1 - Давайте теперь начнем с открытия MS Access.

Step 2- Выберите «Пустая база данных рабочего стола». Введите имя и нажмите кнопку «Создать».

Step 3 - Access создаст новую пустую базу данных и откроет таблицу, которая также полностью пуста.

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

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

Вот некоторые из наиболее распространенных типов данных, которые вы найдете в типичной базе данных Microsoft Access.

Тип данных Описание Размер
Краткий текст Текст или комбинации текста и чисел, в том числе числа, не требующие вычисления (например, номера телефонов). До 255 символов.
Длинный текст Длинный текст или комбинации текста и цифр. До 63 999 знаков.
номер Числовые данные, используемые в математических расчетах. 1, 2, 4 или 8 байтов (16 байтов, если установлено значение Replication ID).
Дата / время Значения даты и времени для лет от 100 до 9999. 8 байт
валюта Денежные значения и числовые данные, используемые в математических вычислениях, включая данные с одним до четырех десятичных знаков. 8 байт
AutoNumber Уникальное последовательное (увеличенное на 1) число или случайное число, присваиваемое Microsoft Access при добавлении новой записи в таблицу. 4 байта (16 байтов, если задано значение Replication ID).
Да нет Значения Да и Нет и поля, содержащие только одно из двух значений (Да / Нет, Истина / Ложь или Вкл / Выкл). 1 бит.
  • Если вы используете предыдущие версии Access, вы заметите разницу для двух из этих типов данных.

  • В Access 2013 у нас теперь есть два типа данных - короткий текст и длинный текст. В предыдущих версиях Access эти типы данных назывались текстом и памяткой.

  • Текстовое поле называется коротким текстом, а ваше мемо-поле теперь называется длинным текстом.

Вот некоторые из других более специализированных типов данных, которые вы можете выбрать в Access.

Типы данных Описание Размер

Вложение

Файлы, например цифровые фотографии. К одной записи можно прикрепить несколько файлов. Этот тип данных недоступен в более ранних версиях Access.

Примерно до 2 ГБ.

OLE объекты

Объекты OLE могут хранить изображения, аудио, видео или другие большие двоичные объекты (большие двоичные объекты).

Примерно до 2 ГБ.

Гиперссылка

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

До 8192 (каждая часть типа данных гиперссылки может содержать до 2048 символов).

Мастер поиска

Запись мастера поиска в столбце «Тип данных» в представлении «Дизайн» на самом деле не является типом данных. Когда вы выбираете эту запись, мастер начинает помогать вам определить простое или сложное поле поиска.

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

Зависит от типа данных поля поиска.

Рассчитано

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

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

Это все различные типы данных, которые вы можете выбрать при создании полей в таблице Microsoft Access.

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

Давайте попробуем создать первую таблицу, в которой будет храниться основная контактная информация о сотрудниках, как показано в следующей таблице -

Имя поля Тип данных
Сотрудник AutoNumber
Имя Краткий текст
Фамилия Краткий текст
Адрес 1 Краткий текст
Адрес 2 Краткий текст
город Краткий текст
состояние Краткий текст
Почтовый индекс Краткий текст
Телефон Краткий текст
Тип телефона Краткий текст

Давайте теперь используем короткий текст в качестве типа данных для всех этих полей и откроем пустую базу данных в Access.

На этом мы остановились. Мы создали базу данных, а затем Access автоматически открыл это представление таблица-одна-таблица для таблицы.

Давайте теперь перейдем на вкладку Field, и вы увидите, что она также создается автоматически. ID, который является полем AutoNumber, действует как наш уникальный идентификатор и является первичным ключом для этой таблицы.

Поле ID уже создано, и теперь мы хотим переименовать его в соответствии с нашими условиями. Это таблица сотрудников, и это будет уникальный идентификатор для наших сотрудников.

Нажми на Name & Caption на ленте, и вы увидите следующее диалоговое окно.

Измените имя этого поля на EmployeeIDчтобы сделать его более конкретным для этой таблицы. Если хотите, введите другую необязательную информацию и нажмите ОК.

Теперь у нас есть поле идентификатора сотрудника с заголовком «Идентификатор сотрудника». Это автоматически устанавливается на автоматический номер, поэтому нам действительно не нужно менять тип данных.

Давайте теперь добавим еще несколько полей, нажав на click to add.

выберите Short Textкак поле. Когда вы выбираете короткий текст, Access автоматически выделяет это имя поля, и все, что вам нужно сделать, это ввести имя поля.

Тип FirstNameкак имя поля. Точно так же добавьте все обязательные поля, как показано на следующем снимке экрана.

После добавления всех полей щелкните значок «Сохранить».

Теперь вы увидите Save As диалоговое окно, в котором вы можете ввести имя таблицы для таблицы.

Введите имя вашей таблицы в поле Table Name. Здесьtblпрефикс обозначает таблицу. Позвольте нам нажать Ok, и вы увидите свою таблицу в панели навигации.

Просмотр дизайна таблицы

Поскольку мы уже создали одну таблицу, используя Datasheet View. Теперь мы создадим другую таблицу, используяTable Design View. Мы будем создавать следующие поля в этой таблице. В этих таблицах будет храниться некоторая информация для различных книжных проектов.

Имя поля Тип данных
ID проекта AutoNumber
Название проекта Краткий текст
Управляющий редактор Краткий текст
Автор Краткий текст
PStatus Краткий текст
Контракты Вложение
ProjectStart Дата / время
ProjectEnd Дата / время
Бюджет валюта
ProjectNotes Длинный текст

Давайте теперь перейдем на вкладку Create.

В группе таблиц щелкните Таблица, и вы увидите, что это полностью отличается от представления таблицы. В этом представлении вы можете увидетьfield name и data type бок о бок.

Теперь нам нужно сделать ProjectID первичный ключ для этой таблицы, поэтому давайте выберем ProjectID и нажмите на Primary Key вариант в ленте.

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

Сохраним эту таблицу и дадим ей имя.

Нажмите ОК, и теперь вы можете увидеть, как эта таблица выглядит в режиме таблицы.

Давайте нажмем кнопку просмотра таблицы в верхнем левом углу ленты.

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

Нажмите ОК, и вы увидите изменения.

База данных Access не является файлом в том же смысле, что и документ Microsoft Office Word или Microsoft Office PowerPoint. Вместо этого база данных Access - это набор объектов, таких как таблицы, формы, отчеты, запросы и т. Д., Которые должны работать вместе для правильной работы базы данных. Теперь мы создали две таблицы со всеми полями и свойствами полей, необходимыми в нашей базе данных. Чтобы просмотреть, изменить, вставить или удалить данные в таблице в Access, вы можете использовать представление таблицы данных.

  • Таблица - это простой способ просматривать данные в строках и столбцах без какого-либо специального форматирования.

  • Каждый раз, когда вы создаете новую веб-таблицу, Access автоматически создает два представления, которые вы можете сразу же использовать для ввода данных.

  • Таблица, открытая в режиме таблицы, напоминает рабочий лист Excel, и вы можете вводить или вставлять данные в одно или несколько полей.

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

  • По умолчанию поля в базе данных Access настроены для приема определенного типа данных, например текста или чисел. Вы должны ввести тип данных, которые поле настроено для приема. Если вы этого не сделаете, Access отобразит сообщение об ошибке -

Давайте добавим данные в ваши таблицы, открыв созданную нами базу данных Access.

Выберите Views → Datasheet Просмотрите параметр на ленте и добавьте данные, как показано на следующем снимке экрана.

Точно так же добавьте данные во вторую таблицу, как показано на следующем снимке экрана.

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

Теперь нажмите кнопку удаления. Появится подтверждающее сообщение.

Нажмите Yes и вы увидите, что выбранная запись теперь удалена.

Запрос - это запрос результатов данных и действия с данными. Вы можете использовать запрос, чтобы ответить на простой вопрос, выполнить вычисления, объединить данные из разных таблиц или даже добавить, изменить или удалить данные таблицы.

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

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

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

  • Запросы, которые добавляют, изменяют или удаляют данные, называются запросами действия.

  • Вы также можете использовать запрос для предоставления данных для формы или отчета.

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

  • Сложность запросов заключается в том, что вы должны понимать, как их составить, прежде чем сможете их фактически использовать.

Создать запрос выбора

Если вы хотите просмотреть данные только из определенных полей в таблице или просмотреть данные из нескольких таблиц одновременно или, возможно, просто просмотреть базу данных по определенным критериям, вы можете использовать Selectзапрос. Давайте теперь рассмотрим простой пример, в котором мы создадим простой запрос, который будет извлекать информацию изtblEmployeesстол. Откройте базу данных и нажмите наCreate таб.

Нажмите Query Design.

в Tables вкладка на Show Table диалоговом окне дважды щелкните значок tblEmployees стол, а затем Close диалоговое окно.

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

Теперь нажмите Run на Design вкладку, затем щелкните Run.

Запрос выполняется и отображает данные только в том поле, которое указано в запросе.

Критерии запроса помогают получать определенные элементы из базы данных Access. Если элемент соответствует всем введенным вами критериям, он отображается в результатах запроса. Если вы хотите ограничить результаты запроса на основе значений в поле, вы используете критерии запроса.

  • Критерий запроса - это выражение, которое Access сравнивает со значениями поля запроса, чтобы определить, следует ли включать запись, содержащую каждое значение.

  • Некоторые критерии просты и используют базовые операторы и константы. Другие сложны и используют функции, специальные операторы и включают ссылки на поля.

  • Чтобы добавить некоторые критерии к запросу, вы должны открыть запрос в режиме конструктора.

  • Затем вы определяете поля, для которых хотите указать критерии.

пример

Давайте посмотрим на простой пример, в котором мы будем использовать критерии в запросе. Сначала откройте базу данных Access, затем перейдите на вкладку «Создать» и нажмите «Дизайн запроса».

На вкладке Таблицы диалогового окна Показать таблицу дважды щелкните значок tblEmployees таблицу, а затем закройте диалоговое окно.

Давайте теперь добавим некоторые поля в сетку запросов, такие как EmployeeID, FirstName, LastName, JobTitle и Email, как показано на следующем снимке экрана.

Позвольте нам запустить ваш запрос, и вы увидите только эти поля в качестве результата запроса.

Если вы хотите видеть только тех, у кого JobTitle является координатором по маркетингу, вам нужно будет добавить критерии для этого. Давайте снова перейдем к дизайну запроса и в строке Criteria в JobTitle введите Marketing Coordinator.

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

Если вы хотите добавить критерии для нескольких полей, просто добавьте критерии в несколько полей. Допустим, мы хотим получить данные только для «Координатора по маркетингу» и «Помощника по бухгалтерскому учету»; мы можем указать оператор строки OR, как показано на следующем снимке экрана -

Давайте теперь снова запустим ваш запрос, и вы увидите следующие результаты.

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

Давайте теперь снова запустим ваш запрос, и вы увидите следующие результаты.

В MS Access и других СУБД запросы могут делать намного больше, чем просто отображать данные, но они могут фактически выполнять различные действия с данными в вашей базе данных.

  • Запросы действия - это запросы, которые могут добавлять, изменять или удалять несколько записей одновременно.

  • Дополнительным преимуществом является то, что вы можете предварительно просмотреть результаты запроса в Access перед его запуском.

  • Microsoft Access предоставляет 4 различных типа запросов действий -

    • Append

    • Update

    • Delete

    • Make-table

  • Запрос действия нельзя отменить. Вам следует подумать о создании резервных копий любых таблиц, которые вы будете обновлять, с помощью запроса на обновление.

Создать запрос на добавление

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

Назовем это TempEmployees и он содержит поля, как показано на следующем снимке экрана.

в Tables на вкладке в диалоговом окне Показать таблицу дважды щелкните значок tblEmployeesтаблицу, а затем закройте диалоговое окно. Дважды щелкните поле, которое нужно отобразить.

Позвольте нам запустить ваш запрос, чтобы сначала отобразить данные.

Теперь вернемся к дизайну запросов и выберем Append кнопка.

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

Выберите имя таблицы из раскрывающегося списка и нажмите ОК.

В сетке запросов вы можете увидеть, что в Append To row все поля выбраны по умолчанию, кроме Address1. Это потому, что это поле Address1 недоступно вTempEmployeeстол. Итак, нам нужно выбрать поле из выпадающего списка.

Заглянем в поле «Адрес».

Позвольте нам запустить ваш запрос, и вы увидите следующее подтверждающее сообщение.

Нажмите Yes чтобы подтвердить свое действие.

Когда вы открываете TempEmployee table, вы увидите, что все данные добавлены из tblEmployees в таблицу TempEmployee.

Давайте разберемся, как создавать запросы в этой главе.

Создать запрос на обновление

Вы можете использовать запрос на обновление, чтобы изменить данные в ваших таблицах, и вы можете использовать запрос на обновление, чтобы ввести критерии, чтобы указать, какие строки должны быть обновлены. Запрос на обновление дает вам возможность просмотреть обновленные данные перед выполнением обновления. Давайте снова перейдем на вкладку Create и нажмем Query Design.

На вкладке Таблицы в диалоговом окне Показать таблицу дважды щелкните значок tblEmployees таблицу, а затем закройте диалоговое окно.

На Designна вкладке в группе Тип запроса щелкните Обновить и дважды щелкните поле, в котором вы хотите обновить значение. Допустим, мы хотим обновить имя «Рекс» на «Макс».

в Update ряд Designсетке введите обновленное значение и в строке Критерии добавьте исходное значение, которое вы хотите обновить, и запустите запрос. Появится подтверждающее сообщение.

Нажмите Yes и перейдите в режим таблицы, и вы увидите первую запись - имя теперь обновлено до «Макс».

Создать запрос на удаление

Вы можете использовать запрос на удаление, чтобы удалить данные из ваших таблиц, и вы можете использовать запрос на удаление, чтобы ввести критерии, чтобы указать, какие строки должны быть удалены. Запрос на удаление предоставляет вам возможность просмотреть строки, которые будут удалены, прежде чем вы выполните удаление. Пойдем вCreate вкладку еще раз и щелкните Query Design.

На вкладке Таблицы диалогового окна Показать таблицу дважды щелкните значок tblEmployees таблицу, а затем закройте диалоговое окно.

На Design вкладка в Query Type группа, щелкните Delete и дважды щелкните значок EmployeeID.

В строке Criteria таблицы дизайна введите 11. Здесь мы хотим удалить сотрудника, EmployeeID которого равен 11.

Давайте теперь запустим запрос. Этот запрос отобразит подтверждающее сообщение.

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

Создать запрос на создание таблицы

Вы можете использовать запрос make-table для создания новой таблицы из данных, хранящихся в других таблицах. Пойдем вCreate tab снова и нажмите Query Design.

На вкладке Таблицы в диалоговом окне Показать таблицу дважды щелкните значок tblEmployees таблицу, а затем закройте диалоговое окно.

Выделите все те поля, которые вы хотите скопировать в другую таблицу.

В Типе запроса выберите Make Table кнопка выбора.

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

Теперь запустите свой запрос.

Теперь вы увидите следующее сообщение.

Нажмите Yes и вы увидите новую таблицу, созданную в панели навигации.

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

  • Если вы часто хотите запускать варианты определенного запроса, рассмотрите возможность использования запроса с параметрами

  • Запрос параметров извлекает информацию в интерактивном режиме, предлагая конечному пользователю указать критерии перед выполнением запроса.

  • Вы также можете указать, какой тип данных должен принимать параметр.

  • Вы можете установить тип данных для любого параметра, но особенно важно установить тип данных для числовых, денежных или дат / времени данных.

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

  • Если параметр настроен на прием текстовых данных, любой ввод интерпретируется как текст, и сообщение об ошибке не отображается.

пример

Давайте теперь посмотрим на простой пример, создав запрос параметров. Давайте откроем вашу базу данных и выберем Query Design на вкладке Create table.

Дважды щелкните значок tblProjects и закрыть Show диалоговое окно.

Выберите поле, которое вы хотите видеть в качестве результата запроса, как показано на следующем снимке экрана.

В сетке конструктора запросов в строке Критерии столбца ProjectStart введите [Enter a project start data]. Струна[Enter a project start data]это приглашение вашего параметра. Квадратные скобки означают, что вы хотите, чтобы запрос запрашивал ввод, а текст -Enter a project start data отображается запрос параметра.

Теперь давайте запустим ваш запрос, и вы увидите следующее приглашение.

Давайте теперь введем следующую дату.

Щелкните ОК для подтверждения.

В результате вы увидите подробную информацию о проекте, стартовавшем 01.02.2007. Давайте перейдем в представление «Дизайн» и снова запустим запрос.

Введите дату, как на скриншоте выше, и нажмите ОК. Теперь вы увидите подробную информацию о проекте, который стартовал 5/1/2008.

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

Вы можете добавить альтернативные критерии двумя способами:

  • Вы можете использовать оператор OR, чтобы объединить два набора критериев.
  • Вы также можете использовать сетку конструктора запросов, но вместо того, чтобы указывать критерии в одной строке, вам нужно будет разделить ее на несколько строк.

пример

Давайте посмотрим на простой пример альтернативных критериев. Откройте базу данных и во вкладке Create выберитеQuery Design.

Дважды щелкните на tblEmployee и закройте диалоговое окно Показать таблицу.

Дважды щелкните все поля, которые вы хотите видеть как результат запроса.

Теперь вы можете видеть, что альтернативный критерий указан в разных строках LastNameполе. Когда вы запустите этот запрос, вы увидите сотрудников, чья фамилия либоPollard или же Manning. Давайте теперь запустим этот запрос.

Как видите, из-за альтернативных критериев были извлечены только два сотрудника.

Если вы хотите добавить альтернативные критерии в несколько полей, вам придется использовать разные строки для всех полей. Давайте теперь добавим еще один альтернативный критерий, по которому мы можем получать информацию о сотрудниках, чья фамилия либоPollard или же Manning или должность Accounting Assistant.

Давайте теперь запустим этот запрос.

Теперь вы увидите следующий результат.

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

Нормализация

Нормализация базы данных или просто нормализация - это процесс организации столбцов (атрибутов) и таблиц (отношений) реляционной базы данных для минимизации избыточности данных. Это процесс разделения данных на несколько таблиц для повышения общей производительности, целостности и долговечности.

  • Нормализация - это процесс организации данных в базе данных.

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

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

CustID имя Адрес Cookie-файлы Количество Цена Всего
1 Этель Смит 12 Main St, Арлингтон, VA 22201 S Шоколадная плитка 5 2 доллара США 10,00 долл. США
2 Том Уилбер 1234 Дуб Доктор, Пекин, IL 61555 Чок Чип 3 2 доллара США 6,00 долларов США
3 Этил Смити 12 Main St., Арлингтон, VA 22201 Шоколадная плитка 5 2 доллара США 10,00 долл. США

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

Здесь у нас есть одна таблица для клиентов, вторая - для заказов, а третья - для файлов cookie.

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

Определение отношений

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

Давайте теперь рассмотрим три типа отношений:

Отношения один-ко-многим

Отношения "один ко многим" - наиболее распространенный тип отношений. В этом типе отношений строка в таблице A может иметь много совпадающих строк в таблице B, но строка в таблице B может иметь только одну совпадающую строку в таблице A.

Например, таблицы «Клиенты» и «Заказы» имеют отношение «один ко многим»: каждый клиент может разместить несколько заказов, но каждый заказ поступает только от одного клиента.

Отношения "многие ко многим"

В отношении «многие ко многим» строка в таблице A может иметь много совпадающих строк в таблице B, и наоборот.

Вы создаете такие отношения, определяя третью таблицу, называемую junction table, первичный ключ которого состоит из внешних ключей из таблицы A и таблицы B.

Например, таблица «Клиенты» и таблица «Cookies» имеют отношение «многие ко многим», которое определяется отношением «один ко многим» из каждой из этих таблиц и таблицы «Заказы».

Отношения один на один

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

Этот тип отношений встречается нечасто, потому что большая часть информации, связанной таким образом, будет находиться в одной таблице. Вы можете использовать отношения один к одному, чтобы -

  • Разделите таблицу на множество столбцов.
  • Изолируйте часть стола по соображениям безопасности.
  • Храните данные, которые недолговечны и могут быть легко удалены, просто удалив таблицу.
  • Храните информацию, которая применяется только к подмножеству основной таблицы.

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

  • Для достижения этой цели вы разделяете свои данные на множество тематических таблиц, чтобы каждый факт был представлен только один раз.

  • Для этого все общие поля, которые связаны друг с другом, помещаются в одну таблицу.

  • Чтобы сделать этот шаг правильно, вы должны сначала понять отношения между вашими таблицами, а затем указать эти отношения в своей базе данных Access.

Зачем создавать отношения между таблицами?

MS Access использует отношения таблиц для объединения таблиц, когда вам нужно использовать их в объекте базы данных. Существует несколько причин, по которым вам следует создавать связи таблиц перед созданием других объектов базы данных, таких как формы, запросы, макросы и отчеты.

  • Для работы с записями из более чем одной таблицы часто необходимо создать запрос, который объединяет таблицы.

  • Запрос работает путем сопоставления значений в поле первичного ключа первой таблицы с полем внешнего ключа во второй таблице.

  • Когда вы разрабатываете форму или отчет, MS Access использует информацию, которую он собирает из отношений таблиц, которые вы уже определили, чтобы предоставить вам осознанный выбор и предварительно заполнить параметры свойств соответствующими значениями по умолчанию.

  • При проектировании базы данных вы разделяете информацию на таблицы, каждая из которых имеет первичный ключ, а затем добавляете внешние ключи в связанные таблицы, которые ссылаются на эти первичные ключи.

  • Эти иностранные key-primary key pairings формируют основу для отношений таблиц и многотабличных запросов.

Давайте теперь добавим еще одну таблицу в вашу базу данных и назовем ее tblHRData с помощью Table Design, как показано на следующем снимке экрана.

Нажми на Save значок, как на скриншоте выше.

Войти tblHRData в качестве имени таблицы и щелкните Ok.

tblHRData теперь создается с данными в нем.

Давайте теперь разберемся с отношениями «один к одному» в MS Access. Это отношение используется для связи одной записи из одной таблицы с одной и только одной записью в другой таблице.

Давайте теперь перейдем к Database Tools таб.

Нажми на Relationships вариант.

Выбрать tblEmployees и tblHRData а затем нажмите кнопку Добавить, чтобы добавить их в наше представление, а затем закройте Show Table диалоговое окно.

Чтобы создать связь между этими двумя таблицами, используйте мышь, нажмите и удерживайте EmployeeID поле из tblEmployees и перетащите это поле в поле, которое мы хотим связать, наведя курсор мыши на EmployeeID из tblHRData. Когда вы отпустите кнопку мыши, Access откроет следующее окно -

Вышеупомянутое окно связывает EmployeeID tblEmployees с EmployeeID tblHRData. Давайте теперь щелкнем поCreate кнопка, и теперь эти две таблицы связаны.

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

Давайте откроем tblEmployees стол.

Здесь, слева от каждой записи, по умолчанию вы увидите небольшой знак плюса. Когда вы создаете связь, Access автоматически добавит в эту таблицу дополнительную таблицу.

Позвольте нам щелкнуть значок плюса, и вы увидите, что информация, связанная с этой записью, находится на tblHRData стол.

Нажми на Save значок и открыть tblHRData и вы увидите, что данные, которые мы ввели, уже здесь.

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

Процесс создания отношения «один-ко-многим» точно такой же, как и для создания отношения «один-к-одному».

Давайте сначала очистим макет, нажав на Clear Layout вариант на Design tab.

Сначала мы добавим еще одну таблицу tblTasks как показано на следующем снимке экрана.

Нажми на Save значок и введите tblTasks в качестве имени таблицы и перейдите к Relationship Посмотреть.

Нажми на Show Table вариант.

Добавить tblProjects и tblTasks и закрыть Show Table диалоговое окно.

Мы можем повторить тот же процесс еще раз, чтобы связать эти таблицы. Щелкните и удерживайте ProjectID из tblProjects и перетащите его полностью в ProjectID из tblTasks. Кроме того, когда вы отпускаете мышь, всплывает окно отношений.

Нажмите кнопку "Создать". Теперь у нас созданы очень простые отношения.

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

Давайте теперь создадим many-to-many relationship. У нас более одного автора работают более чем над одним проектом, и наоборот. Как вы знаете, у нас есть поле Author в tblProjects, поэтому мы создали для него таблицу. Это поле нам больше не нужно.

Выберите поле «Автор» и нажмите кнопку «Удалить», и вы увидите следующее сообщение.

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

Эти поля внешнего ключа будут первичными ключами из двух таблиц, которые были связаны вместе: tblAuthers и tblProjects.

Чтобы создать составной ключ в Access, выберите оба эти поля и в table tools design На вкладке вы можете щелкнуть непосредственно по этому первичному ключу, и это пометит не одно, а оба этих поля.

Комбинация этих двух полей и есть tables’ unique identifier. Давайте теперь сохраним эту таблицу какtblAuthorJunction.

Последний шаг на пути к объединению отношений "многие ко многим" - вернуться к этому. relationships view и создайте эти отношения, нажав на Show Table.

Выберите три выделенные выше таблицы и нажмите кнопку «Добавить», а затем закройте это диалоговое окно.

Щелкните и перетащите AuthorID поле из tblAuthors и поместите его поверх tblAuthorJunction стол AuthorID.

Создаваемые вами отношения будут рассматриваться Access как отношения «один ко многим». Мы также будем обеспечивать ссылочную целостность. Давайте теперь включимCascade Update и нажмите на Create кнопку, как на скриншоте выше.

Давайте теперь держим ProjectID, перетащите его прямо поверх ProjectID из tblAuthorJunction.

Мы будем Enforce Referential Integrity и Cascade Update Related Fields.

Ниже приведены отношения "многие ко многим".

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

Access поддерживает два набора подстановочных знаков, поскольку он поддерживает два стандарта для языка структурированных запросов.

  • ANSI-89
  • ANSI-92

Как правило, вы используете подстановочные знаки ANSI-89 при запуске queries и find-and-replace операции с базами данных Access, такими как *.mdb и *.accdb файлы.

Подстановочные знаки ANSI-92 используются при выполнении запросов к проектам Access - файлам доступа, подключенным к базам данных Microsoft SQL Server. В проектах Access используется стандарт ANSI-92, поскольку этот стандарт используется в SQL Server.

Подстановочные знаки ANSI-89

В следующей таблице перечислены символы, поддерживаемые ANSI-89 -

символ Описание пример
* Соответствует любому количеству символов. Вы можете использовать звездочку (*) в любом месте строки символов. wh* находит что, белое и почему, но не какое-то время или часы.
? Соответствует любому буквенному символу. B?ll находит мяч, колокольчик и счет.
[] Соответствует любому одиночному символу в скобках. B[ae]ll находит мяч и колокольчик, но не счет.
! Соответствует любому символу, не указанному в скобках. b[!ae]ll находит клюв и быка, но не мяч или колокольчик.
- Соответствует любому из диапазона символов. Вы должны указать диапазон в порядке возрастания (от A до Z, а не от Z до A). b[a-c]d находит bad, bbd и bcd.
# Соответствует любому числовому символу. 1#3S находит 103, 113 и 123.

Подстановочные знаки ANSI-92

В следующей таблице перечислены символы, поддерживаемые ANSI-92 -

символ Описание пример
% Соответствует любому количеству символов. Его можно использовать как первый или последний символ в строке символов. wh% находит что, белое и почему, но не какое-то время или часы.
_ Соответствует любому буквенному символу. B_ll находит мяч, колокольчик и счет.
[] Соответствует любому одиночному символу в скобках. B[ae]ll находит мяч и колокольчик, но не счет.
^ Соответствует любому символу, не указанному в скобках. b[^ae]ll находит клюв и быка, но не мяч или колокольчик.
- Соответствует любому из диапазона символов. Вы должны указать диапазон в порядке возрастания (от A до Z, а не от Z до A). b[a-c]d находит bad, bbd и bcd.

пример

Давайте теперь посмотрим на простой пример использования этих подстановочных знаков, открыв дизайн запроса.

Добавьте выделенные таблицы и закройте Show Table диалоговое окно.

Добавьте поля в сетку запроса, которые вы хотите видеть в качестве результата запроса.

Запустите свой запрос.

Давайте снова вернемся к query design и добавьте запрос имени проекта.

Теперь запустите свой запрос и предположим, что вы не знаете точное название проекта, но знаете, что название проекта содержит слова «зелье». НажмитеOk.

Вышеупомянутый шаг не дает никакого результата. Это потому, что Access ищет точное совпадение вproject name field. Он ищет проект, в котором есть словоpotion в его имени.

Если вы хотите, чтобы пользователи могли вводить подстановочные знаки для замены неизвестных символов, вам необходимо настроить критерии и включить оператор like.

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

Предположим, вы знаете, что слово potion где-то в названии появляется, но вы не знаете, где именно.

Вы можете добавить *, чтобы заменить любое количество символов перед словом зелье, а затем добавить еще один * после. НажмитеOk.

Пользователям всегда полезно знать, какие подстановочные знаки они могут вводить. Но есть пользователи, которые могут не знать подстановочные знаки, которые они могут и не могут вводить. В этом случае вы можете сами ввести подстановочные знаки.

В этой ситуации в промежутке между Likeоператора и нашего запроса параметра, мы можем добавить эти подстановочные знаки, и теперь у нас есть очень специфический способ написать это. После словаlikeв кавычках введите подстановочный знак, который мы используем. В этом случае мы использовали «*» для замены любого количества символов. Теперь мы добавим это к параметру. Для этого нам понадобится амперсанд(&)символ и пробел. Теперь мы повторим этот шаг и добавим еще один амперсанд (&), потому что мы присоединяем этот подстановочный знак к любым критериям, введенным пользователем для этого имени проекта, а затем «*» в кавычках.

Давайте теперь снова запустим наш запрос. Введите словоpotion в командной строке без подстановочных знаков.

Теперь запрос будет отслеживать эти подстановочные знаки по обе стороны от введенного здесь текста. Нам нужно просто ввести зелье и нажать Enter.

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

Допустим, мы хотим найти каждый проект, в названии которого есть слово «the». Затем вам нужно просто ввести слово иEnter или щелкните Ok.

С помощью этого запроса становится проще искать проекты, в названии которых есть слово «the». 2- й уровень результатов может также включать названия проектов со словом «мать», где «the» является частью слова.

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

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

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

Теперь у нас есть новая база данных Access, которая содержит больше данных для расчета.

пример

Давайте попробуем на примере понять это. Мы будем получать некоторую информацию из различных таблиц -tblCustomers, tblOrders, tblOrdersDetails и tblBooks и обзор множества полей.

Давайте теперь запустим запрос, и вы увидите следующие результаты.

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

Полное выражение (Subtotal: [tblOrdersDetails]![QTY]*[tblBooks]![RetailPrice])включает имя таблицы, первый tblOrdersDetails в квадратных скобках, потому что именно там находится наше поле количества. Теперь восклицательный знак говорит Access заглянуть в эту таблицу в поисках поля QTY и умножить его на поле розничной цены в tblBooks.

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

Допустим, мы хотим рассчитать наш налог с продаж. В сетке запроса мы сделаем то же самое, что и раньше, и на этот раз назовем поле просто «Налог» и «Умножим промежуточный итог» на ставку налога в девять процентов.

Позвольте нам запустить ваш запрос еще раз, и вы увидите новый Tax field в конце концов.

Индекс - это структура данных, специальная структура данных, предназначенная для повышения скорости извлечения данных. Если вы часто выполняете поиск в таблице или сортируете ее записи по определенному полю, вы можете ускорить эти операции, создав индекс для поля. Microsoft Access использует индексы в таблице, как вы используете индекс в книге для поиска данных.

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

Давайте теперь посмотрим, какие индексы создает Microsoft Access по умолчанию и как их создавать самостоятельно, и узнаем, как удалить любые ненужные индексы. ОткрытьtblEmployees таблица в базе данных Access, которую мы создали.

  • Мы действительно не играли с индексами в этой базе данных, но это не значит, что у нас их нет.
  • Фактически, любое поле, заданное в качестве первичного ключа в Access, автоматически индексируется.
  • Access создает дополнительные вторичные индексы в зависимости от имен ваших полей.

Теперь давайте перейдем в меню «Файл» и выберем «Параметры».

Вы увидите окно параметров доступа.

Перейти к Object Designersи вы увидите раздел с надписью AutoIndex при импорте / создании, а в текстовом поле вы увидите ID; ключ; код; число. По умолчанию доступ автоматически добавляет вторичный индекс к полям, которые начинаются или заканчиваются этими именами, и это касается полей, которые вы импортировали, а также тех, которые вы создали вручную.

Если вы хотите проиндексировать какое-либо поле, вы можете перейти к Field таб.

Выберите любое поле, которое вы хотите проиндексировать, и установите флажок проиндексировано в разделе Проверка поля. У вас также есть альтернативные варианты создания или удаления индекса. Вы можете вернуться кDesign View.

Вы можете настроить индексы, выбрав любое поле. Вы также можете увидеть, как они индексируются, в области свойств поля ниже. Любое поле, в которомNoвыбранный рядом с индексированным, означает, что для данного поля нет индекса. Вы можете изменить это, щелкнув раскрывающееся меню и выбрав два других варианта -Yes (Duplicate OK) и Yes (No duplicates).

Последний вариант Yes (No Duplicates)означает, что Access автоматически запретит дублирование значений в этом поле. Давайте теперь создадим индекс для нашего поля фамилии.

Выберем LastName индексировать и говорить Yes (Duplicates OK). По мере сохранения Access создаст этот индекс. Еще одна область, в которой вы можете просматривать и настраивать индексы для таблицы, - это область дизайна таблиц вShow/Hide группа.

Если вы нажмете на эту кнопку «Индексы», откроется специальное представление, отображающее все индексы, созданные для этой таблицы.

Теперь у нас есть два индекса для tblEmployees - один, который был создан автоматически на основе поля первичного ключа, и один, который мы только что создали для поля LastName. Это различные способы работы с индексами в таблицах Microsoft Access.

В этой главе мы расскажем, как рассчитать группу записей в Access. Мы создали поле, которое вычисляет строку за строкой или запись за записью, чтобы создать поле итогов или промежуточных итогов по строке, но что, если бы мы хотели вычислить вниз по группе записей, а не по отдельным. Мы можем сделать это, создав так называемыйAggregate Query.

Агрегированный запрос

Сводный запрос, также известный как итоговый или сводный запрос, представляет собой сведения о сумме, массе или группе. Это может быть общая или валовая сумма, а также группа или подмножество записей. Агрегатные запросы могут выполнять ряд операций. Вот простая таблица, в которой перечислены некоторые способы суммирования для группы записей.

S.No Агрегатные функции и описание
1.

Sum

Добавляет значения поля

2.

Avg

Среднее значение поля

3.

Min

Наименьшее (минимальное) значение поля

4.

Max

Наивысшее (максимальное) значение поля

5.

Count

Подсчет значений (записей)

6.

StDev

Стандартное отклонение значений полей, включая поля даты / времени

7.

Var

Дисперсия значений поля, включая дату / время

Позвольте нам открыть вашу базу данных и перейти к дизайну запросов и включить следующие таблицы:

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

Это простой запрос, и мы отображаем только два поля - book title и quantity и когда мы запускаем его, мы видим каждый отдельный заказ в нашей базе данных.

Давайте теперь запустим этот запрос, и вы увидите следующие результаты.

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

Давайте теперь перейдем к представлению «Дизайн» и на вкладке «Дизайн» вы увидите символ Sigma. Это кнопка ваших итогов.

Щелкните символ сигмы, который откроет другую строку под вашим полем в строке таблицы, и отсюда вы можете указать, как вы группируете этот запрос.

Теперь мы сгруппируем книги по названию, а также просуммируем наше поле количества.

Если мы нажмем на group by areaи далее щелкните раскрывающееся меню, все параметры будут перечислены вниз. В этом случае мы выберем вариантSum а затем запустите свой запрос.

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

Конкатенация в доступе

Мы изучили процесс нормализации, хранения информации в отдельных полях. Иногда вы хотите видеть или просматривать данные вместе, например, объединить поля имени и фамилии в одно поле. Вы можете отобразить эту информацию вместе, создав вычисляемое поле, которое объединяет одну или несколько строк. Вы также можете добавить другие символы, например запятую или точку, которые вам могут понадобиться.

  • Для объединения в Access есть два разных оператора, которые вы можете использовать ampersand (&) и plus (+) подписать.

  • Амперсанд объединяет две строки в одну, тогда как знак плюса объединяет две строки и распространяет значения NULL, например, если одно значение равно NULL, все выражение оценивается как null.

пример

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

Давайте теперь добавим tblCustomersтаблица закройте это диалоговое окно отображения таблицы. Мы попробуем объединить несколько простых именованных полей.

Давайте теперь добавим поля имени и фамилии и запустим запрос.

Как видите, имя и фамилия разделены на два разных поля.

Нам нужно отображать эту информацию вместе.

Вернитесь к Design View а в третьем поле создайте новое поле с именем full name. Теперь добавьте полное имя и введите выражение, объединяющее эти два поля вместе.

Запустим запрос, и вы увидите новое вычисляемое поле.

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

Давайте теперь вернемся в представление дизайна и добавим еще один раздел к этому выражению.

Добавьте пробел внутри кавычек и еще один амперсанд. Это заставляет Access брать информацию из этого поля имени; добавьте его с пробелом, а затем добавьте информацию из поля фамилии в самом конце. Теперь запустите запрос еще раз, и вы увидите следующие результаты.

Агрегированные запросы удобны, если вы ищете только одно конкретное число, но если вы хотите суммировать информацию, например, в виде сводки в виде электронной таблицы, вы можете попробовать выполнить запрос кросс-таблицы. Если вы хотите реструктурировать сводные данные, чтобы их было легче читать и понимать, рассмотрите возможность использованияCrosstab Query.

  • Запрос кросс-таблицы - это тип Select Query. Когда вы запускаете перекрестный запрос, результаты отображаются в таблице. Эта таблица данных имеет структуру, отличную от других типов таблиц.

  • Структура запроса кросс-таблицы может упростить чтение, чем простой запрос на выборку, который отображает те же данные, как показано на следующем снимке экрана.

Безусловно, самый простой способ создать запрос кросс-таблицы в Access - просто использовать мастер, поставляемый с Access, для создания запроса кросс-таблицы. Давайте теперь перейдем на вкладку «Создать» в группах запросов и щелкнем по мастеру запросов.

В приведенном выше диалоговом окне вы можете увидеть все виды специальных запросов. Вы можете создать простой мастер запросов, подобный тому, что мы делали до сих пор, из представления «Дизайн». Второй - тот, который нам нужен - запрос кросс-таблицы, который отображает данные в формате компактной электронной таблицы. Теперь выберите запрос кросс-таблицы и нажмите ОК.

Первый экран мастера запрашивает, какая таблица или запрос содержит поля, которые вы хотите использовать для результатов вашего запроса кросс-таблицы. Нажми наQueries переключатель и выберите qryOrdersInformation - это тот, который мы создали ранее, который содержит промежуточный итог, налог с продаж и т. Д. Нажмите Next.

Теперь мы рассмотрим доступные поля этого запроса. Вам будет предложено ввести значения полей, которые вы хотите использовать в качестве заголовков строк. Допустим, нам нужен простой список всех наших разных названий книг. Теперь выберите поля заголовка книги и отправьте его в выбранную область поля и нажмитеNext.

В приведенном выше диалоговом окне вопрос заключается в том, что вы хотите использовать в качестве заголовков столбцов, и это действительно зависит от того, что вы хотите оценить. Предположим, вы хотите просмотреть нашsales by date, выберите TransactionDate и нажмите Next.

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

Следующий вопрос в приведенном выше диалоговом окне спрашивает, какое число вы хотите рассчитать для каждого столбца на пересечении строк. В этом случае мы можем ориентироваться по количеству проданных книг, выбравquantity (QTY) и Sum из функций и нажмите Next.

Самый последний экран вашего мастера спросит what do you want to name your query и далее нажимаем Finish к View that query.

Теперь у нас есть информация по книгам, а также информация об общих продажах, например, когда произошла каждая из этих продаж.

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

Что такое присоединиться

Соединение указывает, как объединить записи из двух или более таблиц в базе данных. Концептуально соединение очень похоже на отношение таблиц. Фактически, соединения предназначены для запросов, каковы отношения к таблицам.

Ниже приведены два основных типа объединений, которые мы обсудим в этой главе.

  • Внутреннее соединение
  • Внешнее соединение

И то, и другое можно легко создать из queries design view.

Внутреннее соединение

Давайте теперь поймем Inner Join -

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

Внешнее соединение

Давайте теперь поймем, что такое Outer Join это -

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

Есть и другие типы соединения -

Левое внешнее соединение и правое внешнее соединение

Давайте теперь поймем Left Outer Join и Right Outer Join -

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

Давайте теперь перейдем к Create вкладка и создайте запрос из Design View. ВыбратьtblProjects и tblTasks и закройте диалоговое окно Показать таблицу, как показано на следующем снимке экрана.

Добавить ProjectName поле из tblProjects, и TaskTitle, StartDate и DueDate из tblTasks стол.

Давайте теперь запустим запрос.

Мы отображаем только записи из нескольких проектов. У пары этих проектов есть много задач, связанных с этим проектом, и эта информация связана черезProjectID поле.

  • Когда мы создаем этот запрос в Microsoft Access, Access берет эту взаимосвязь из созданных нами отношений.

  • По умолчанию он создает так называемый Inner Join between these two fields, между этими двумя таблицами, и именно так он связывает эту информацию из этих двух таблиц.

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

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

Access отобразит имя левой таблицы и имя правой таблицы в диалоговом окне «Свойства объединения».

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

  • У нас также есть два других варианта; мы можем включить все записи изtblProjects, и только записи из tblTasks где объединенные поля равны, а это - левое внешнее соединение.

  • У нас есть третий вариант, включающий все записи из tblTasks и только те записи из tblProjects, в которых объединенные поля равны, и это правое внешнее соединение.

Это различные типы объединений, которые можно легко создать в представлении «Дизайн». Давайте выберем вторую опцию, это Left Outer Join, и нажмитеOk.

Давайте теперь посмотрим на другие шаги -

Когда вы посмотрите на линию отношений, вы увидите маленькую стрелку, указывающую в сторону ProjectID в tblTasks. Когда вы запустите этот запрос, вы увидите следующие результаты.

Как видите, он показывает нам каждое имя проекта, независимо от того, связана ли с ним задача. Вы также увидите кучу пустых полей. Все это будет пустым, потому что вtblTasks, откуда эти поля. Давайте теперь перейдем кDesign View еще раз и дважды щелкните линию связи.

В диалоговом окне «Свойства соединения» выберите третий вариант, предназначенный для правого внешнего соединения, и нажмите Ok.

Теперь посмотрим на нашу линию отношений. Вы увидите, что теперь маленькая стрелка указывает наProjectID в tblProjects. Когда вы запустите этот запрос, вы увидите следующие результаты.

Самостоятельное присоединение

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

Если мы захотим узнать, кто такой супервизор Кейтлин Расмуссен, нам нужно будет взять номер, хранящийся в этом поле супервизора, и найти его в той же таблице в этом поле идентификатора сотрудника, чтобы узнать, что Чарити Хендрикс является супервизором.

Эта таблица не является идеальной структурой для реляционной базы данных, потому что она не нормализована.

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

Чтобы увидеть самосоединение, создайте таблицу со следующими полями и введите данные.

Здесь мы хотим снова создать список с именем сотрудника, а затем с именем руководителя. Создадим запрос изquery design view.

Теперь добавьте tblEmployees таблицы.

Закройте это диалоговое окно.

Теперь добавьте имя и фамилию наших сотрудников.

Теперь нам нужен способ создать связь между этой таблицей и самой собой. Для этого нам нужно открытьthe show table dialog box и еще раз добавьте tblEmployees.

Мы создали еще одну копию той же таблицы в этом представлении запроса. Теперь нам нужно создать самосоединение. Для этого щелкните Supervisor вtblEmployees стол и, удерживая кнопку мыши, поместите его прямо на EmployeeID в этой скопированной таблице - tblEmployees_1. Затем добавьте имя и фамилию из этой скопированной таблицы.

Позвольте нам запустить ваш запрос, и вы увидите следующие результаты.

Он отображает имена сотрудников рядом с именами их руководителей. И вот как вы создаете самостоятельное присоединение в Microsoft Access.

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

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

пример

В таблицу клиентов вы можете случайно добавить одного и того же клиента дважды. В таких случаях у клиента будет один и тот же адрес, но разные идентификаторы клиента, что может создать проблемы с отчетностью. В этой ситуации вы можете использоватьduplicates query wizard to quickly locate possible duplicate entries.

Давайте теперь откроем нашу базу данных Access, которая содержит tblAuthers стол и пойти Create вкладка и в группе запросов выберите query wizard.

Если вы видите следующий снимок экрана, у вас есть четыре разных мастера на выбор. Выберитеfind duplicates query wizard и нажмите Ok.

Самый первый экран мастера поиска дубликатов спросит, в какой таблице или в каком запросе вы хотите искать возможные дубликаты. Допустим, мы хотим проверить таблицу авторов, чтобы убедиться, что один и тот же автор случайно не был введен дважды. Итак, выберите tblAuthors и нажмитеNext.

  • Второй экран мастера спросит, какие поля могут содержать повторяющуюся информацию.

  • Обычно вы не будете использовать поле первичного ключа, потому что, опять же, когда вы назначаете поле в Access в качестве первичного ключа, Access не позволит вводить дубликаты.

  • Мы рассмотрим любое другое поле или комбинацию полей.

Мы можем искать по фамилии или имени и фамилии, или вы можете искать по их почтовому адресу, или, точнее, по их номеру телефона или дню рождения.

Давайте теперь выполним поиск по имени, фамилии и дню рождения и нажмем Next.

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

Давайте теперь щелкнем Next. Это приведет нас к последнему экрану в этом мастере запросов.

На следующем экране введите, как вы хотите назвать свой запрос.

По умолчанию он назовет его find duplicates на плюс whatever the name of the object that you're querying. В этом случае,tblAuthors, но вы можете дать ему любое другое имя и нажать finish.

Здесь Access обнаружил возможный дубликат, и это будет автор Хосе Калин, у которого такой же день рождения, тот же адрес, тот же номер телефона, но разные AuthorID.

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

Выберите любую запись и выберите Удалить, как в следующем диалоговом окне.

Access выдает подсказку: «Вы собираетесь удалить одну запись». Щелкните Да, если хотите продолжить.

Если вы хотите увидеть, как этот мастер создал этот запрос, перейдите в представление «Дизайн» и посмотрите, что все было добавлено к этому запросу.

Как вы можете видеть на скриншоте выше, у нас есть поля и некоторые конкретные критерии под полем имени.

Вот как этот мастер ищет эту повторяющуюся информацию. На сегодняшний день это самый простой метод поиска дубликатов.

В Access есть еще один очень полезный мастер, и это Find Unmatched Query Wizard. Мастер поиска несопоставленных запросов создает запрос, который находит записи или строки в одной таблице, не имеющие связанных записей в другой таблице.

Как мы уже обсуждали, как данные объединяются в запросы и как большинство запросов ищут совпадения между двумя или более таблицами.

  • Это соединение по умолчанию в Access, например, если мы разрабатываем запрос с двумя таблицами, tblCustomers и tblOrders, и объединить эти две таблицы по идентификаторам клиентов, этот запрос вернет только совпадающие результаты. Другими словами, клиенты, разместившие заказы.

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

  • Это именно то, что делает запрос поиска несоответствий.

Есть много других возможных применений этого типа запросов.

В нашей базе данных мы можем использовать его, чтобы увидеть, какие авторы еще не написали проект, или вы можете использовать его, чтобы увидеть, какие сотрудники еще не выбрали какие-либо льготы для здоровья. Давайте теперь откроем вашу базу данных, которая содержитCustomers и Ordersстол; перейдите на вкладку «Создать» и нажмите кнопку мастера запросов.

Выберите Find Unmatched Query Wizard и нажмите Ok.

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

Теперь нам нужен список клиентов из tblCustomers. Выберите этот вариант и нажмитеNext.

На следующем экране вам нужно указать which table or query contains the related records. Другими словами, какую таблицу вы используете для сравнения с первой. Для этого нам нужно найти тех, у которых нет заказов. Нам нужно выбрать таблицу, содержащую информацию по всем заказам -tblOrders. Теперь нажмитеNext.

На следующем экране вам нужно указать, какая информация содержится в обеих таблицах.

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

Здесь у нас по умолчанию выбран CustID как в полях в «tblCustomers», так и в полях в «tblOrders». Теперь нажмитеNext.

На следующем экране вы можете выбрать поля, которые должны отображаться в результатах запроса.

Теперь давайте выберем все доступные поля и нажмем на двунаправленную стрелку. Это перемещает всеavailable fields к selected fieldsплощадь. Теперь нажмитеNext.

Последний экран позволит вам выбрать имя для вашего запроса и нажать Finish.

Здесь у нас есть один клиент, указанный как тот клиент, который еще не разместил у нас заказ.

Вы также можете увидеть, как был создан этот запрос. Для этого вам нужно вернуться вDesign View.

Этот мастер создал Outer Join между tblCustomer и tblOrders и Is Nullкритерий добавляется к CustID из tblORders. Это сделано для исключения определенных записей. В этом случае это клиенты, которые разместили заказы или у которых есть соответствующая информация в tblOrders.

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

  • Связанные формы
  • Несвязанные формы

Связанные формы

Давайте теперь поймем, что Bound Forms являются -

  • Связанные формы связаны с некоторым базовым источником данных, например с таблицей, запросом или оператором SQL.
  • Связанные формы - это то, о чем обычно думают люди, когда думают о цели формы.
  • Формы должны быть заполнены или использованы для ввода или редактирования данных в базе данных.
  • Примерами связанных форм обычно являются те, которые пользователи используют для ввода, просмотра или редактирования данных в базе данных.

Несвязанные формы

Давайте посмотрим на несвязанные формы -

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

Типы связанных форм

В Access можно создавать много типов связанных форм. Разберемся в типах -

Форма отдельной позиции

Это самый популярный вариант, и именно здесь отображаются записи - по одной за раз.

Форма для нескольких предметов

Это отображает одновременно несколько записей из этого связанного источника данных.

Разделить форму

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

Создание форм

Есть несколько методов, которые вы можете использовать для создания форм в Access. Для этого откройте свою базу данных и перейдите вCreate tab. В группе «Формы» в правом верхнем углу вы увидите кнопку «Мастер форм».

Щелкните эту кнопку, чтобы запустить Мастер форм.

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

Предположим, мы просто хотим иметь быструю форму, которую мы собираемся использовать для ввода данных о наших сотрудниках.

Из Tables/Queries раскрывающийся список выберите tblEmployeesстол. Щелкните двойную стрелку, чтобы переместить все поля сразу.

Давайте просто оставим это с одной таблицей и нажмем Next.

Следующий экран в мастере форм запросит макет, который мы хотели бы для нашей формы. У нас естьcolumnar, tabular, datasheet and justifiedмакеты. Мы выберем здесь столбчатый макет и затем нажмемNext.

На следующем экране нам нужно дать название нашей форме. Назовем этоfrmEmployees.

После того, как вы дали своей форме заголовок, вы можете открыть форму, чтобы увидеть, как она выглядит, или вы можете начать вводить информацию в свою таблицу. Или вы можете выбрать вариант изменения дизайна формы. Выберем первый вариант, чтобыopen the form to view or enter information и нажмите Finish.

Теперь взгляните на следующий снимок экрана. Вот как выглядит ваша форма. Это форма с одним элементом, то есть по одной записи отображается за раз, а дальше вниз вы можете видеть кнопки навигации, которые говорят нам, что отображается запись 1 из 9. Если вы нажмете эту кнопку, она переместится. к следующей записи.

Если вы хотите перейти к самой последней записи в этой форме или этой таблице, вы можете использовать кнопку рядом с этой стрелкой вправо, стрелку со строкой после нее, это кнопка последней записи. Если вы хотите добавить информацию о новом сотруднике, перейдите в конец этих записей, а затем после 9 записей вы увидите пустую форму, в которой вы можете начать ввод информации о новом сотруднике.

Это один из примеров того, как вы можете создать форму с помощью мастера форм. Давайте теперь закроем эту форму и перейдем на вкладку Create. Теперь с помощью мастера создадим более сложную форму. Щелкните Мастер форм, и на этот раз мы выберем поля из нескольких разных таблиц.

В этом мастере форм выберем tblProjects за Tables/Queriesи выберите несколько доступных полей, таких как ProjectID, ProjectName, ProjectStart и ProjectEnd. Эти поля теперь переместятся в Выбранные поля.

Теперь выберите tblTasksдля таблиц / запросов и отправить по TaskID, ProjectID, TaskTitle, StartDate, DueDate и PercentComplete. НажмитеNext.

Здесь мы хотим получить данные из нескольких разных объектов. Мы также можем выбрать один из вариантов того, как мы хотим оформить нашу форму. Если мы хотим создать плоскую форму, мы можем упорядочитьtblTasks, который создаст эту единую форму со всеми полями, расположенными в плоском виде, как показано выше.

Однако, если мы хотим создать иерархическую форму на основе этого отношения «один ко многим», мы можем организовать наши данные по tblProjects.

В приведенном выше окне у нас есть возможность включить subform за tblTasks, или мы можем сделать это связанной формой. В этой связанной форме tblProjects будет иметь кнопку, которая запустит вторую форму, отфильтрованную по проекту, который мы выбрали в этой базовой форме проектов. Давайте теперь выберемForm with subform(s), а затем щелкните Next.

На следующем экране вы можете выбрать макет для подчиненной формы. По умолчанию выбирается режим таблицы. Представление таблицы похоже на представление таблицы. Теперь нажмитеNext.

На следующем экране вам нужно указать имя для ваших форм. Введите желаемое имя и нажмитеFinish.

Access предоставит вам предварительный просмотр того, как выглядит ваша форма. Сверху у вас есть элементы управления в вашей основной форме, которые взяты из нашегоProjectsстол. Спустившись вниз, вы увидите подчиненную форму. Это как форма внутри формы.

Форма для нескольких предметов

Вы также можете захотеть создать особую форму. Для этого вы можете нажать наMore Forms выпадающее меню.

В меню вы можете создать Multiple Items форма, а Datasheet форма, а Split форма, или даже Modal Dialogформа. Обычно это переплетенные формы; выберите объект, который вы хотите привязать к этой форме. Это не относится к формам модального диалога.

Чтобы создать форму этого типа, вам нужно сначала выбрать объект на панели навигации. ВыберемtblEmployees Вот.

Продолжите, нажав на More Forms и Multiple Items.

На приведенном выше шаге будет создана форма «Несколько элементов», в которой будут перечислены все сотрудники.

Разделить форму

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

Давайте теперь выберем tblEmployees в области навигации, а затем на Createтаб. ВыбратьSplit Form в меню «Другие формы», и вы увидите следующую форму, в которой форма разделена по вертикали.

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

  • После создания формы первое, что вы, вероятно, захотите сделать, это изменить размер или переместить элементы управления.
  • Вам также может потребоваться добавить или удалить элемент управления.

Теперь мы обсудим, как легко изменить вашу форму.

Управление

Это просто общий термин, используемый для описания любого объекта в форме или отчете, который отображает данные, выполняет действия или элементы, используемые для украшения, такие как линия. Другими словами, элемент управления - это практически все, что размещается в форме или отчете.

Следующее можно рассматривать как элементы управления -

  • Такие объекты, как этикетки.
  • Несвязанные или связанные текстовые поля, которые можно использовать для добавления, редактирования или даже вычисления выражения.
  • Командные кнопки, которые выполняют такие действия, как Save, Open электронное письмо или Print и эти кнопки также известны как элементы управления.
  • Это просто общий термин для любого объекта в форме или отчете.

Теперь мы рассмотрим различные аспекты создания презентабельной формы и поймем, как редактировать и изменять форму. Давайте теперь откроем нашу форму нескольких элементов, в которой перечислены все сотрудники изtnlEmployees.

Как видите, список сотрудников, но на самом деле не очень удобный список. Наши средства контроля слишком велики. Они слишком велики, разнесены и не обеспечивают удобного просмотра списка.

Чтобы изменить внешний вид элементов управления в этой форме, у вас есть два представления формы, которые вы можете использовать. На вкладке "Главная" щелкните значокView падать.

У вас есть представление макета или представление дизайна, и оба эти представления используются для редактирования вашей формы. Вид формы открывается по умолчанию; это представление, которое вы будете использовать для взаимодействия с базовым источником данных или его редактирования.

Чтобы изменить внешний вид самой формы, нам нужно сначала перейти в режим макета.

Когда вы переключитесь в режим макета, вы увидите серию контекстных вкладок.

В верхней части Access вы увидите область, отмеченную Form Layout Tools с тремя вкладками - вкладкой «Дизайн», вкладкой «Упорядочить» и вкладкой «Формат», и каждая из этих вкладок имеет разные параметры для форматирования внешнего вида формы.

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

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

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

Это один из быстрых способов редактирования высоты и ширины элементов управления в форме из этого представления макета.

Темы

В Access есть несколько основных способов форматирования форм с помощью встроенных тем, цветов и стилей шрифтов, настройки цвета заливки и затенения альтернативных строк. Давайте теперь откроемfrmEmployees.

Формы, которые создает Access, просты и понятны. У них есть синяя полоса сверху и белый фон.

Если вы хотите узнать, как еще можно стилизовать эти формы, вы можете перейти в представление «Дизайн» или «Макет» и изучить некоторые из параметров, доступных на вкладке «Дизайн» в области «Темы».

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

Если вам нравится тема, но вы хотите изменить цвета, вы можете настроить цвета, вернувшись в группу «Темы» на вкладке «Дизайн» и выбрав понравившийся цвет. Вы также можете создавать собственные цвета, соответствующие цветам вашей компании.

Точно так же у вас также есть ряд стилей шрифтов на выбор. Вы можете выбрать один из многих, которые поставляются с Office Suite, или вы можете настроить эти шрифты, выбрав определенный шрифт заголовка, основной шрифт и даже создав собственное имя для этой группы шрифтов и сохранив его.

Вернемся к frmEmployees. В этой форме вы увидите, что каждая дополнительная строка имеет светло-серый цвет.

Параметр форматирования называется Alternate Row Color и если вы хотите изменить это в нескольких формах, перейдите к Design View.

Выберите этот раздел сведений, а затем перейдите на вкладку Формат, и в группе фона вы должны увидеть параметр для Alternate Row Color. Вы можете изменить цвета для альтернативных строк. Чтобы увидеть, как это выглядит, просто перейдите в представление формы или представление макета.

Если вам совсем не нужно затенение, вы можете выбрать No Color Как ваш Alternate Row Color и это более традиционный вид из более ранних версий Access.

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

  • Microsoft Access предлагает несколько функций для управления перемещением пользователей по базе данных.

  • Мы уже использовали панель навигации для навигации по всем создаваемым объектам Access, таким как формы, запросы, таблицы и т. Д.

  • Если вы хотите создать свою собственную структуру навигации и упростить пользователям поиск конкретных объектов, которые им действительно нужны, вы можете создать форму навигации, которая представляет собой форму, которая использует элемент управления навигацией, чтобы пользователи могли использовать или просматривать формы и отчеты. прямо из основной формы навигации.

пример

Давайте теперь рассмотрим простой пример, в котором мы создадим форму навигации. Для этого перейдите на вкладку «Создать»; в группе Формы вы увидите это раскрывающееся меню навигации.

В этом меню вы увидите различные макеты для размещения ваших форм и отчетов, которые вы хотите встроить в эту форму навигации.

  • Есть один с горизонтальными вкладками, один с вертикальными вкладками - где все вкладки выровнены по левому краю, вертикальный макет вкладок, где все вкладки выровнены по правому краю.

  • Существует горизонтальный макет вкладок с двумя уровнями, поэтому, если у вас есть много объектов, которые вы хотите отобразить сверху, вы можете использовать это.

  • У вас может быть тот, где у вас есть как горизонтальные, так и вертикальные вкладки, выровненные по левому или правому краю.

В следующем примере мы будем использовать горизонтальные и вертикальные вкладки. Чтобы создать этот макет или эту форму навигации, просто щелкните по ней, и Access создаст несвязанную форму с элементом управления навигацией на ней.

Чтобы добавить объекты в эту форму навигации, проще всего сделать это через представление макета, просто перетащив объекты туда, где вы хотите, чтобы они отображались.

Давайте теперь перетащим frmProjects из панели навигации и перетащите ее в [Добавить] вверху.

Аналогично перетащите frmAuthers из области навигации и перетащите ее слева от кнопки Добавить новую.

Давайте теперь добавим другие формы, связанные с проектами, такие как frmSubTasks, frmCurrentProjects и т.п.

Давайте теперь добавим дополнительные вкладки вверху. Сначала мы добавимfrmEmployees форма.

Теперь вы увидите, что другие кнопки вашего проекта исчезли слева, потому что они прикреплены к вкладке Project. Все кнопки, которые вы видите слева, связаны с тем, что вы выбрали вверху. Теперь, когда выбрана вкладка Сотрудник, давайте перетащим информацию о сотрудниках влево.

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

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

Поле со списком

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

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

пример

Давайте теперь рассмотрим простой пример создания поля со списком. Мы создали форму для сотрудника, как показано на следующем снимке экрана.

Теперь мы хотим создать поле со списком для типа телефона, потому что мы знаем, что тип телефона должен быть либо Home, Cell или же Work. Эта информация должна быть доступна в раскрывающемся списке, и пользователю не нужно вводить эту информацию.

Давайте теперь перейдем к Design Viewдля этой формы. ВыберитеPhone Type поле и нажмите удалить.

После удаления поля «Тип телефона» перейдите на вкладку «Дизайн».

Давайте теперь выберем Use Control Wizards в меню «Элементы управления», а затем выберите в меню элемент управления «Поле со списком», как показано на следующем снимке экрана.

Теперь нарисуйте поле со списком там, где хотите, и когда вы отпустите кнопку мыши, вы увидите диалоговое окно мастера поля со списком.

Здесь у вас есть другой вариант для данных; Давайте выберем 2- й вариант, в котором мы добавим значения и нажмите Далее.

Введите значения, которые должны отображаться в раскрывающемся списке, и нажмите Next.

Нажмите Next очередной раз.

Введите label для поля со списком и щелкните Finish.

Вы можете видеть, что поле со списком создано, но не выровнено по другому полю. Давайте сделаем это сначала, выбрав все поля, а затем перейдем на вкладку «Упорядочить».

Слева вы увидите Stackedвариант. Щелкните эту кнопку.

Теперь вы можете видеть, что поля выровнены.

Чтобы сделать размер каждого поля одинаковым, у нас есть разные варианты, давайте нажмем кнопку Размер / Пространство.

В раскрывающемся списке щелкните To Shortest.

Теперь перейдите к Form Посмотреть.

Теперь пользователь может легко выбрать любую опцию для типа телефона.

В этой главе мы рассмотрим представление SQL. Каждый раз, когда вы создаете запрос в дизайне запросов, Access автоматически создает запрос SQL для вас. Это фактически извлекает данные из таблиц. Чтобы увидеть, как ваш запрос создается в sql, когда вы создаете его в дизайне запросов, позвольте нам открыть вашу базу данных.

Выберите Query Design из Create вкладка и добавьте tblEmployees стол.

Выберите поле, которое вы хотите видеть в качестве результата запроса, а затем запустите свой запрос.

Теперь вы можете увидеть всю информацию о сотрудниках как результат запроса. Вы выбрали определенные поля в таблице запросов; в то же время MS Access также создал SQL-запрос с результатами, полученными из вашей таблицы запросов.

Чтобы просмотреть SQL, перейдите на вкладку «Главная». ВыбратьSQL View в меню «Просмотр», и вы увидите SQL-код вашего запроса.

пример

Ниже приводится еще один пример, в котором мы увидим выполняемые проекты.

Позвольте нам запустить ваш запрос.

Чтобы увидеть SQL, выберите SQL View в меню View.

Вы можете увидеть SQL-запрос, который автоматически создается Access. Это помогает извлекать данные из двух таблиц.

Одним из особенно полезных инструментов форматирования в Access является возможность применять Conditional Formattingчтобы выделить конкретные данные. Давайте рассмотрим простой пример условного форматирования.

пример

В этом примере мы будем использовать форму fSubCurrentProjects в нашей базе данных.

У нас есть список всех проектов в этой базе данных, а также есть пара новых полей, например On Time Status и Number of Late Tasks. Эта форма создана на основе другого запроса.

В этом запросе у нас есть соединение между таблицей и запросом, который будет отображать количество сроков выполнения или количество проектов с просроченными задачами. У нас также есть вычисляемое поле, которое использует функцию ЕСЛИ, чтобы определить, больше ли счетчик срока выполнения, чем ноль. Затем он отобразит словаLate если проект опаздывает или On Time если в этом конкретном проекте нет просроченных задач.

Пример 1

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

Теперь выберите On Time Status поле.

Теперь перейдите на вкладку Формат.

На этой вкладке «Формат» вы должны увидеть группу «Управление форматированием» и специальную кнопку для условного форматирования. Давайте теперь щелкнем по условному форматированию.

Теперь вы увидите Диспетчер правил условного форматирования, и в настоящее время у нас нет правил, применяемых к этому элементу управления. Давайте теперь создадим новое правило, нажав кнопку «Новое правило».

Теперь вы увидите диалоговое окно «Новое правило форматирования». Сначала мы укажем тип правила, которое будем создавать, и здесь у нас есть два варианта. Первый вариант -check the values in the current record or to use an expression, а второй вариант - compare this record with the other records.

Теперь у нас есть только одно из двух значений в нашей форме; либо On Time, либо слово Late из заданного запроса. Теперь давайте выберем «Field Value Is»В первом поле со списком, а затем выберите«equal to»Из второго поля со списком. Теперь введите слово «Late»В кавычках.

Теперь мы можем настроить условное форматирование, как мы хотим, чтобы это поле выглядело, если слово Lateпоявляется в этом поле. Давайте теперь изменим цвет шрифта на красный и сделаем егоbold, italic и underline, и это наше условное правило. Давайте теперь щелкнемOk а затем щелкните Apply, и Ok очередной раз.

Вы видите, что слово Lateформатируется сейчас. Это один из примеров того, как создать очень простое правило условного формата.

Пример 2

Возьмем другой пример. Здесь мы сделаем заголовок или название проектаred и bold, italic и underline. Выберите в форме элемент управления названием проекта.

Теперь мы вернемся на вкладку «Формат», нажмем «Условное форматирование» и создадим новое правило для этого конкретного элемента управления, как показано на скриншоте выше.

Здесь мы не будем проверять значение текущего поля, которое мы выбрали, но мы будем проверять его по другому полю в этой форме. ВыбратьExpression Is в первом поле со списком, а затем нажмите кнопку… в конце, как на скриншоте выше.

В категориях выражений у вас есть все объекты в этой форме. Двойной щелчок поCountofDueDate. Это отправит ссылку на этот элемент управления или это поле нашему построителю выражений и условию, если оно больше нуля. Теперь нажмите ОК.

Теперь давайте нажмем ОК, а затем снова нажмем Применить и ОК.

Это был пример условного форматирования поля на основе значений в другом поле.

Пример 3

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

Нажмите кнопку «Новое правило», чтобы создать новое правило, а затем нажмите «ОК», как показано на скриншоте выше.

В новом правиле форматирования мы теперь выберем тип правила «Compare to other records». Давайте еще изменимBar color to red. Мы хотим, чтобы наша самая короткая полоса представляла самое низкое значение, а самая длинная полоса - самое высокое значение. Теперь давайте нажмем ОК, а затем снова нажмем Применить и ОК.

Теперь вы можете увидеть применение условного затенения, как на скриншоте выше. Давайте теперь перейдем к представлению формы.

В этой главе мы рассмотрим Controls and Propertiesдоступно в Access. Мы также узнаем, как добавлять элементы управления в формы. Элементы управления - это части формы или отчета, которые вы используете дляenter, edit, или же displayданные. Элементы управления позволяют просматривать данные в приложении базы данных и работать с ними.

  • Наиболее часто используемым элементом управления является текстовое поле, но другие элементы управления включают в себя кнопки команд, метки, флажки и элементы управления подчиненной формой / подчиненным отчетом.

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

Связанные элементы управления

Давайте теперь поймем, что такое Bound Controls -

  • Связанные элементы управления - это элементы, которые привязаны к определенному источнику данных в вашей базе данных, например к полю, таблице или запросу.
  • Значения могут быть текстом, датами, числами, флажками, изображениями или даже графиками.
  • Вы используете связанные элементы управления для отображения значений, которые поступают из полей в вашей базе данных.

Несвязанные элементы управления

Давайте теперь поймем, что такое несвязанные элементы управления -

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

Типы управления

В Access можно создавать различные типы элементов управления. Здесь мы обсудим несколько распространенных, таких как текстовое поле, метка, элементы управления вкладками кнопок и т. Д.

Текстовое окно

  • Обычно все, что находится в текстовом поле, будет привязано, но не всегда.

  • Вы можете использовать эти элементы управления для взаимодействия с данными, хранящимися в вашей базе данных, но вы также можете иметь несвязанные текстовые поля.

  • Вычисляемые элементы управления будут выполнять какие-то вычисления на основе написанного вами выражения, и эти данные нигде не хранятся в вашей базе данных.

  • Он рассчитывается на лету и живет только на этой единственной форме.

Этикетки

  • Ярлыки всегда будут текстовыми и несвязанными.
  • Обычно метки не связаны ни с одним источником в вашей базе данных.
  • Ярлыки используются для обозначения других элементов управления в форме, например текстовых полей.

Кнопка

  • Это еще один тип популярного контроля; эти командные кнопки обычно выполняют макрос или модуль.
  • Кнопки обычно используются для взаимодействия с данными или объектами в вашей базе данных.

Вкладки

  • Элементы управления вкладками предоставляют представление элементов управления или других элементов управления в форме с вкладками.
  • Добавление вкладок в форму может сделать ее более организованной и простой в использовании, особенно если форма содержит много элементов управления.
  • Размещая связанные элементы управления на отдельных страницах элемента управления вкладками, вы можете уменьшить беспорядок и упростить работу с данными.

Гиперссылка

  • Гиперссылка создает в вашей форме гиперссылку на что-то еще. Это может быть веб-страница или другой объект или место в вашей базе данных.

Некоторые другие элементы управления

Давайте теперь посмотрим на некоторые другие элементы управления -

  • Вы также можете создать элемент управления веб-браузером и элемент управления навигацией, группы, разрывы страниц, поля со списком.

  • Вы можете создавать диаграммы, линии, переключатели, списки, прямоугольники, флажки, несвязанные рамки объектов, вложения, переключатели, подчиненные формы и вложенные отчеты, связанные рамки объектов и даже размещать изображения в вашей форме.

пример

Давайте теперь посмотрим на простой пример некоторых из этих элементов управления, создав новую пустую форму. Перейти кCreate вкладка в forms группа и нажмите Blank Form.

Вышеупомянутый шаг откроет несвязанную форму, которая еще не прикреплена ни к одному элементу в нашей базе данных.

По умолчанию он открывается в виде макета, как показано на скриншоте выше.

Давайте теперь перейдем в представление дизайна, чтобы добавить поля.

На вкладке "Дизайн" нажмите на вкладку свойств.

На странице свойств щелкните стрелку раскрывающегося списка и убедитесь, что выбрана форма, а затем перейдите на вкладку «Данные».

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

Выберите таблицы, содержащие данные, которые вы хотите отобразить; нажмите кнопку «Добавить» и закройте это диалоговое окно.

Теперь давайте выберем все поля из tblEmployees и перетащим их в сетку запросов, и аналогичным образом добавим все поля из tblHRData.

Теперь нажмите «Сохранить как» и дайте этому запросу имя.

Назовем это qryEmployeesData и нажмите Ok а затем закройте построитель запросов.

Теперь вы можете увидеть запрос как его источник записи. Теперь мы связали эту форму с объектом в нашей базе данных, в данном случае qryEmployeesData. Теперь мы можем начать с добавления некоторых элементов управления в эту форму и, чтобы добавить любой из элементов управления, перейдите на вкладку «Дизайн» и просмотрите свои параметры в группе элементов управления.

В меню «Элементы управления» вы увидите, что мастер использования элементов управления выделен, как на скриншоте выше. Эта маленькая кнопка по умолчанию имеет выделенную рамку. Это означает, что мастера управления включены. Это похоже на тумблер. Когда вы нажимаете на тумблер, мастера выключаются. Повторный щелчок по нему включит мастеров.

Давайте теперь щелкнем метку и перетащим эту метку, введите информацию о сотруднике, а затем перейдите на вкладку Формат, чтобы отформатировать ее, как на следующем снимке экрана.

Вы можете применить полужирный стиль или изменить размер шрифта текста внутри этой метки и т. Д. Этот элемент управления отображается в разделе сведений вашей формы. Имеет смысл разместить эту метку внутри раздела заголовка формы, который пока не виден.

Щелкните правой кнопкой мыши в любом месте фона этой формы и выберите Form Header как на скриншоте выше.

Переместите этот элемент управления в область заголовка формы. Давайте теперь создадим некоторые другие элементы управления на вкладке «Дизайн». На этом этапе, скажем, мы хотим распределить все наши поля на двух разных вкладках.

В меню управления вы можете увидеть элемент управления вкладками, который будет создавать вкладки в вашей форме. Щелкните элемент управления вкладкой и нарисуйте его в форме в разделе сведений, как показано на скриншоте выше.

Он создаст две вкладки - страницу 2 и страницу 3, как на скриншоте выше.

Давайте теперь начнем с добавления некоторых элементов управления к этой вкладке.

Если мы хотим просмотреть некоторую информацию, которая хранится в нашем базовом запросе, нажмите на Add Existing Fields из группы «Лента в инструментах», чтобы просмотреть все доступные поля из нашего базового запроса.

Чтобы вывести существующие поля на страницу, выберите все поля, доступные в списке полей, как показано на следующем снимке экрана.

Теперь перетащите поля на страницу 2 элемента управления вкладкой, как показано на следующем снимке экрана.

Теперь перейдите на вкладку «Упорядочить» и выберите Stacked макет.

На второй странице давайте добавим оставшиеся поля из этого запроса.

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

Как только вы закончите форматирование, нажмите на Save As значок, чтобы сохранить форму с желаемым именем.

Нажмите ОК и перейдите к представлению формы, чтобы просмотреть всю информацию в этой форме.

Элемент управления вкладкой разбивает наши элементы управления или наши поля на два экрана, чтобы упростить просмотр и добавление информации.

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

  • Отчет состоит из информации, извлекаемой из таблиц или запросов, а также информации, которая хранится вместе с дизайном отчета, например меток, заголовков и графики.

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

  • Если все поля, которые вы хотите включить, существуют в одной таблице, используйте эту таблицу в качестве источника записей.

  • Если поля содержатся в более чем одной таблице, вам необходимо использовать один или несколько запросов в качестве источника записей.

пример

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

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

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

Прокрутите вниз и настройте элемент управления страницей внизу.

Это был очень быстрый способ создать очень простой отчет. Вы также можете внести незначительные изменения и корректировки из представления дизайна отчета.

  • Как и формы, отчет состоит из множества различных разделов.
  • У вас есть подробный раздел, в котором по большей части находятся все ваши данные.
  • Вы также увидите верхний и нижний колонтитулы страницы; они появляются вверху и внизу каждой страницы вашего отчета.

Давайте теперь изменим заголовок отчета и дадим ему другое имя.

Щелкните значок сохранения, чтобы сохранить отчет.

Вы получите диалоговое окно выше.

Введите имя для своего отчета и нажмите ОК. Если вы хотите увидеть, как этот отчет будет выглядеть на самом деле, в режиме предварительного просмотра вы можете вернуться к кнопке «Просмотр» и нажать «Предварительный просмотр», чтобы увидеть, как этот отчет будет выглядеть при печати на бумаге или в формате PDF.

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

Создание отчета с использованием дизайна отчета

Дизайн отчета - еще один метод создания быстрого отчета в Access. Для этого нам нужно использовать кнопку Report Design View, которая похожа на кнопку Form Design. Это создаст пустой отчет и откроет его непосредственно в представлении «Дизайн», что позволит вам изменить источник управления и добавить поля непосредственно в представление «Дизайн» отчета.

Теперь перейдем на вкладку «Создать» и нажмем кнопку «Дизайн отчета».

Откроется пустой или несвязанный отчет, что означает, что этот отчет не связан ни с каким другим объектом в нашей базе данных.

На вкладке «Конструктор» в группе «Инструменты» выберите «Свойства». Это откроет панель свойств.

На вкладке «Данные» назначьте для этого отчета источник записей, чтобы подключить его к объекту базы данных, как показано на следующем снимке экрана.

Выбрать qryLateProjects из раскрывающегося списка, и теперь следующий шаг - пройти и добавить несколько полей в этот отчет, нажав кнопку «Добавить список существующих полей» на вкладке «Дизайн».

Выберите поля, как на скриншоте выше.

Перетащите поля в отчет, как показано на скриншоте выше. Перейдите на вкладку «Упорядочить», и в группе «Таблица» у вас есть несколько вариантов на выбор.

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

Вы можете видеть, что он перемещает все метки в область заголовка страницы. Эти метки будут отображаться только один раз вверху каждой страницы, и запрос данных будет повторяться для каждой записи в разделе «Подробности». Теперь вы можете пройти и внести некоторые изменения, чтобы сделать поле ProjectName шире.

Как вы можете видеть на скриншоте выше, между разделом «Подробности» и нижним колонтитулом страницы много места.

Давайте перетащим нижний колонтитул страницы вверх, чтобы уменьшить пространство, как на следующем снимке экрана. Теперь мы перейдем на вкладку «Дизайн», нажмем кнопку «Просмотр» и выберем «Просмотр отчета».

Теперь вы можете видеть, что названия некоторых проектов не полны; вы можете настроить это либо с помощью представления «Дизайн», либо с помощью представления макета.

Вот как мы создаем простой отчет прямо из представления «Дизайн».

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

Для этого нам нужно открыть отчет, который мы создали в предыдущей главе. Здесь мы увидим, как часть этой информации отображается в отчете.

Здесь мы начнем с раздела отчета и группировки.

Давайте теперь перейдем к представлению «Дизайн» этого отчета.

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

Щелкните правой кнопкой мыши в любом месте этого отчета, и вы увидите верхний / нижний колонтитул страницы и верхний / нижний колонтитул отчета. В этом конкретном отчете этот верхний / нижний колонтитул не отображается. Давайте выберем этот вариант и вернемся в представление отчета.

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

В представлении отчета теперь вы увидите больше области в самом верху отчета, как показано на следующем снимке экрана.

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

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

Теперь вы можете добавить дополнительные уровни группировки, и для этого вам нужно убедиться, что у вас включены групповая сортировка и общая площадь.

В разделе «Группировка и итоги» вкладки «Дизайн» нажмите кнопку «Группировать и сортировать», чтобы открыть область «Группировка, сортировка и итоги» внизу, как показано на следующем снимке экрана.

Теперь вы можете добавлять дополнительные группы или группировки для любого элемента управления, который есть в вашем отчете. Теперь давайте нажмем на Добавить группу.

На приведенном выше снимке экрана вы можете увидеть базовый источник управления для отчета с названием проекта, заголовком задачи, сроком выполнения и процентом выполнения. Теперь предположим, что мы хотим сгруппировать все наши поздние задачи по проектам, поэтому выберите Project Name из списка.

Теперь вы увидите дополнительный уровень группировки ProjectName Headerнад разделом сведений. Вместо того, чтобы имя проекта отображалось рядом с каждой отдельной запаздывающей задачей, теперь мы можем переместить этот элемент управления в этот заголовок имени проекта. Вы можете выбрать его, а затем нажатьCtrl + X на клавиатуре, чтобы вырезать его из этого раздела сведений и щелкните в любом месте фона заголовка имени проекта, а затем нажмите Ctrl + V чтобы вставить этот элемент управления в заголовок имени проекта.

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

У каждого проекта есть свой маленький уровень в отдельной строке, а затем под этой областью вы увидите все задачи, которые опаздывают для указанного выше проекта. Теперь, когда это изменилось, вы можете пройти и начать форматирование отчета в режиме макета.

Если вы хотите увеличить имя проекта, перетащите строку ниже и измените размер шрифта на 20 на вкладке «Формат».

Вы можете увеличить ширину элемента управления, чтобы покрыть всю ширину страницы.

Чтобы удалить границу вокруг элемента управления, щелкните контур фигуры на вкладке «Формат», как показано на следующем снимке экрана.

Выберите Transparent вариант.

Давайте теперь перейдем в представление дизайна, как показано на следующем снимке экрана.

Отрегулируйте заголовок задачи слева от страницы, как показано на следующем снимке экрана.

Давайте теперь перенесем данные из раздела заголовка страницы в ProjectName раздел заголовка с использованием Ctrl+X и Ctrl+V.

Давайте теперь вернемся к просмотру отчета. Теперь вы увидите, что метки появляются прямо над элементами управления, которые они описывают.

Если вы заметили, то увидите, что между задачами и следующим названием проекта нет пробела. Между ними должно быть дополнительное пространство. Для этого нам нужно добавитьProjectName Footer.

Теперь перейдите в представление «Дизайн».

В области «Группа, сортировка и итоги» нажмите кнопку «Еще» рядом с названием проекта.

Теперь вы найдете все варианты группировки и сортировки по имени проекта, как показано на следующем снимке экрана.

Здесь у нас есть свойство под названием Without a Footer Section. Давайте изменим этот параметр, щелкнув маленькую стрелку рядом со словамиWithout a Footer Section.

Измените это на With a Footer Section.

Как вы можете видеть на приведенном выше снимке экрана, добавлен раздел нижнего колонтитула ProjectName под разделом Details. Он будет действовать как нижний колонтитул для этой группы имен проектов.

Давайте теперь вернемся к просмотру отчета.

Чтобы удалить затенение или появление фона для чередующихся областей как в разделе «Подробности», так и в области «Имя проекта», снова перейдите в представление «Дизайн».

Давайте сначала изменим раздел «Подробности», щелкнув разделитель сведений, а затем откройте лист «Свойства».

На вкладке Формат измените Alternate Back Color к No Color как на следующем снимке экрана.

Аналогичным образом измените Альтернативный цвет задней стороны на Нет цвета для заголовка ProjectName и нижнего колонтитула ProjectName и перейдите в представление отчета.

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

Вот как это будет выглядеть при печати.

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

Функции

Функция - это процедура VBA, которая выполняет задачу или вычисление и возвращает результат. Функции обычно можно использовать в запросах, но есть и другие места, где вы можете использовать функции.

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

  • Вы также можете использовать функции в выражении при создании вычисляемого поля или использовать функции внутри формы или элементов управления отчетом. Вы можете использовать функции даже в аргументах макроса.

  • Функции могут быть довольно простыми, не требующими вызова другой информации или просто ссылаться на одно поле из таблицы или запроса.

  • С другой стороны, они также могут быть довольно сложными с несколькими аргументами, ссылками на поля и даже другими функциями, вложенными в другую функцию.

Давайте теперь рассмотрим несколько примеров использования встроенных функций.

Функции даты и времени

Давайте теперь разберемся с функциями даты и времени -

  • Функция Date () предназначена для возврата текущей системной даты. Эта функция не требует аргументов функции или дополнительной информации. Все, что вам нужно сделать, это написать имя функции и эти открывающие и закрывающие круглые скобки.

  • Есть две очень похожие встроенные функции Time () и Now ().

  • Функция Time () возвращает только текущее системное время, а функция Now () возвращает текущую системную дату и время.

  • В зависимости от данных, которые вы хотите отслеживать, хранить или запрашивать, у вас есть три встроенных, простых в использовании функции, которые помогут с этой задачей.

Давайте теперь откроем вашу базу данных и создадим новый запрос, используя дизайн запроса, и добавим tblProjects и tblTasks.

Добавьте ProjectName из tblProjects и TaskTitle, StartDate и DueDate из tblTasks и запустите свой запрос.

Теперь вы можете видеть все различные задачи из всех проектов. Если вы хотите просмотреть задачи проекта, которые выполняются на сегодняшний день, то мы должны указать критерий, используяDate() Функция для просмотра проектов, которые начинаются сегодня или позже.

Давайте теперь укажем критерии под StartDate.

Критерий начинается с оператора greater than symbol, за которым следует equal to symbol а потом Date Function.

When we run this query, all the tasks will occur either on today's date or in the future as in the following screenshot.

This was an example of how you can use the Date() function as query criteria.

  • Let us now say this query needs to be more flexible in terms of the dates it is pulling starting this week.

  • We do have a couple of different tasks that began this week, that are not showing up in this current list, because of our criteria. It's looking at start dates that are equal to today or above.

If we want to view the tasks that started this week, that have not yet completed or should complete today, let us go back to the Design View.

Here, we will add some additional information to these criteria. In fact, we want it greater than or equal to today's date minus seven days.

If we type minus seven and run the query, you can see the tasks that started this week as well.

DateDiff() Function

The DateDiff() Function is another very popular date/time function. The DateDiff Function returns a Variant (long), specifying the number of time intervals between two specified dates. In other words, it calculates the difference between two dates, and you get to pick the interval by which the function calculates that difference.

Let us now say we want to calculate our authors' age. For this, we first we need to create a new query and add our authors table and then add FirstName, LastName, and the BirthDay fields.

We can calculate people's age by calculating the difference between their date of birth, or birthday and whatever today's date is.

Let us try using the DateDiff Function in a new field.

Let us call it Age followed by a colon, and then write DateDiff Function.

  • The first function argument for the DateDiff function is the interval, so type “yyyy”.
  • The next function argument is the first date that we want to calculate by, which, in this case, will be the Birthday field.
  • The third function argument is whatever today's date is.

Now, run your query and you will see the new field which shows the age of each author.

Format() Function

The Format() Function returns a string, containing an expression formatted according to instructions contained in a format expression. Here is the list of user-defined formats which can be used in Format() function.ss

Setting Description
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week
h Hour
n Minute
s Second

Let us now go back to your query and add more fields in the same using the Format() function.

Type the Format Function. The first function argument will be an expression, which can be almost anything. Let us now have the birthday field as the first and the next thing is to write our format. In this case, we need month, month, day, day. Write “mmdd” in quotes and then, run your query.

It is now taking the date from the birthday field, 4 is the month and 17 is the day.

Let us add “mmm” and “mmmm” instead of “mmdd” in the next fields as in the following screenshot.

Run your query and you will see the results as in the following screenshot.

В следующем поле он возвращает первые 3 символа из названия месяца для этого дня рождения, а в последнем поле вы получите полное название месяца.

Чтобы увидеть месяц, за которым следует год от дня рождения, давайте добавим «гггг», как показано на следующем снимке экрана.

Давайте снова запустим ваш запрос.

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

IIf () Функция

Функция IIf () - это аббревиатура от «Immediate If», и эта функция оценивает выражение как истинное или ложное и возвращает значение для каждого. У него может быть до трех аргументов функции, и все они обязательны.

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

пример

Возьмем простой пример. Мы создадим новый запрос, используя дизайн запроса, и добавим таблицу tblAuthors, а затем добавим следующие поля.

Теперь вы можете видеть, что у нас есть три поля - FirstName, MiddleInitial, LastName, а затем это объединенное поле, которое объединяет все три поля. Позвольте нам запустить ваш запрос, чтобы увидеть результат этого запроса.

Теперь вы можете увидеть результат запроса, но вы также заметите, что некоторые записи не имеют инициалов в середине. Например, запись Джойса Дайера не имеет среднего инициала, но в поле FullName вы увидите период, который на самом деле не нужен. Итак, вернитесь в представление дизайна. Здесь мы объединим имя по-другому, используя функцию IIf.

Давайте запишем имя в другое поле и назовем его FullName1, а затем введем функцию IIf.

  • Первым аргументом функции для функции Immediate If будет ваше выражение. В выражении мы увидим, является ли среднее начальное поле пустым или пустым.

  • Следующий аргумент - верная часть. Итак, если средний инициал равен нулю, мы хотели бы отображать FirstName и LastName.

  • Теперь для нашей ложной части - если MiddleInitial не равен нулю, тогда нам нужно отобразить FirstName, MiddleInitial и LastName.

Позвольте нам запустить ваш запрос, и вы увидите результаты, как на следующем снимке экрана.

В этой главе мы рассмотрим основы макросов в Access. Макрос - это инструмент, который позволяет автоматизировать задачи и добавлять функциональные возможности в формы, отчеты и элементы управления.

  • Макросы в Access работают немного иначе, чем макросы в Word или Excel, где вы, по сути, записываете серию нажатий клавиш и воспроизводите их позже.

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

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

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

Создание макроса

Давайте начнем с создания очень простого макроса, который открывает форму при нажатии кнопки команды. Для этого нам нужно открыть вашу базу данных и форму frmEmployeeData, в которой мы создали две вкладки.

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

Давайте теперь перейдем к представлению «Дизайн» этой формы и добавим кнопку из меню «Элементы управления». Когда вы отпустите кнопку мыши, вы увидите диалоговое окно мастера командной кнопки.

Есть несколько способов создать это действие макроса, но самый простой способ - просто использовать мастер командной кнопки.

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

Вам необходимо указать, какую форму вы хотите открыть с помощью командной кнопки. А пока выберемfrmJobs и нажмите Next.

На этом экране у нас есть два варианта, мы можем open the form and display a very specific record, или мы можем open the form and show all the records. Давайте выберем второй вариант и нажмем Далее, как на скриншоте выше.

Мы могли бы сделать так, чтобы сама командная кнопка отображала картинку, или вы могли бы выбрать Display Text. Здесь мы хотим, чтобы отображался текст «Просмотр заданий», и теперь нажмите «Далее».

Теперь вы можете дать значимое имя своей командной кнопке, как показано на скриншоте выше. Это можно использовать в других кодах или других макросах. Назовем этоcmdViewJobs и нажмите Finish.

Теперь перейдите в представление формы.

Теперь вы увидите кнопку «Просмотр заданий» в форме. Щелкнем по нему.

Теперь у вас открыта форма, но вы не будете просматривать никакой информации. Вернемся к представлению «Дизайн» формы frmEmployeeData. Убедитесь, что кнопка команды выбрана, и щелкните вкладку «Событие» на странице свойств.

После нажатия вы увидите встроенный макрос, созданный мастером. Если теперь вы хотите изменить этот макрос, нажмите кнопку…, чтобы открыть макрос, созданный мастером.

Это конструктор макросов, а справа вы увидите каталог действий. Здесь все ваши действия будут располагаться в папках. У вас есть параметры ввода данных, импорта / экспорта данных и т. Д., А слева в основной области у вас есть еще один макрос. Он содержит только одно действие, и, нажав на это действие, вы можете просмотреть другие свойства для этого конкретного действия.

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

Теперь сохраните макрос, затем закройте конструктор макросов и вернитесь в представление формы.

Давайте снова нажмем «Просмотр вакансий».

Теперь вы можете видеть, что он открывает вашу форму frmJobs и позволяет просматривать все доступные вакансии в нашей базе данных.

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

  • Команда «Сохранить как» обычно используется для сохранения документа в другом формате, чтобы вы могли открыть его в другой программе.

  • В Access вы не можете использовать команду «Сохранить как» таким же образом, вы можете сохранять объекты Access как другие объекты Access, но вы не можете сохранять базу данных Access в виде файла электронной таблицы.

  • Чтобы сохранить Access в виде файла электронной таблицы, вам нужно будет использовать функцию импорта на вкладке «Внешние данные».

Можно импортировать различные типы доступа к данным

Чтобы понять, какие данные вы можете импортировать в данные Access, позвольте нам открыть вашу базу данных и перейти на вкладку «Внешние данные».

В группе «Импорт и ссылка» вы можете увидеть различные типы параметров, доступных для импорта данных в Access. Ниже приведены наиболее часто используемые форматы импорта данных.

  • Microsoft Office Excel
  • Microsoft Office Access
  • Базы данных ODBC (например, SQL Server)
  • Текстовые файлы (с разделителями или фиксированной ширины)
  • XML файлы

пример

Давайте посмотрим на простой пример импорта данных из файла Excel. Вот данные в файле Access.

Чтобы импортировать данные в Access, нам сначала нужно открыть базу данных Access, а затем перейти на вкладку «Внешние данные», как показано на следующем снимке экрана.

В группе Импорт и ссылка вы увидите параметр Excel. Давайте кликнем по этой опции.

Просмотрите файл Excel, из которого вы хотите импортировать данные, и тогда у нас есть разные варианты для хранения данных. Выберем первый вариант и нажмем ОК.

Здесь вы увидите предварительный просмотр ваших данных. Теперь нажмите Далее.

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

Теперь вы увидите диалоговое окно, в котором вы можете установить тип данных для каждого столбца / поля. Если вы не хотите импортировать какое-либо поле, просто установите флажок не импортировать поле. Как только вы закончите с полем FirstName, просто нажмите на поле MiddleInitial.

Давайте теперь пройдемся по всем полям, а затем нажмите Далее.

Вот различные варианты первичного ключа. Выберем первый вариант и нажмем Далее.

В последнем диалоговом окне вы можете ввести имя таблицы по вашему выбору и нажать «Готово».

Если вы хотите сохранить все эти шаги, установите флажок и закройте диалоговое окно.

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

пример

Давайте теперь посмотрим на другой пример импорта данных из базы данных Access. Давайте снова перейдем на вкладку External.

В группе «Импорт и ссылка» выберите параметр «Доступ».

Просмотрите базу данных Access, из которой вы хотите импортировать данные, а затем выберите первый вариант, в котором говорится «Импортировать таблицы, запросы, формы и т. Д.». Теперь нажмите «ОК».

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

Пойдем в Reportsвкладку и выберите любой отчет, который хотите импортировать; вы также можете выбрать все данные, нажав наSelect Allкнопка. ВыберемProjects и нажмите Ok.

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

В этой главе мы поймем, как экспортировать данные из Access. Экспорт данных фактически противоположен импорту данных. При импорте данных мы переносим данные из других форматов в Access, а при экспорте мы сохраняем данные в других форматах.

Чтобы понять, какие данные вы можете экспортировать из данных Access, позвольте нам открыть вашу базу данных и перейти на вкладку «Внешние данные».

В группе «Экспорт» вы можете увидеть различные варианты, доступные для экспорта данных из Access. Ниже приведены наиболее часто используемые форматы экспорта данных.

  • Microsoft Office Excel
  • Microsoft Office Access
  • Базы данных ODBC (например, SQL Server)
  • Текстовые файлы (с разделителями или фиксированной ширины)
  • XML файлы

пример

Давайте посмотрим на простой пример экспорта данных из Access. Откройте свою базу данных, из которой вы хотите экспортировать данные. В области навигации выберите объект, из которого вы хотите экспортировать данные.

Вы можете экспортировать данные из объектов таблицы, запроса, формы, отчета и т. Д. Давайте выберем qryAllProjects, а затем перейдем на вкладку External Data.

На вкладке «Внешние данные» щелкните тип данных, в которые вы хотите экспортировать. Например, чтобы экспортировать данные в формате, который может быть открыт в Microsoft Excel, щелкните Excel.

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

На этом экране мастера Access обычно спрашивает, хотите ли вы сохранить сведения об операции экспорта. Если вы думаете, что вам нужно будет выполнять одну и ту же операцию на постоянной основе, выберитеSave export steps установите флажок и закройте диалоговое окно.

Откроется следующий файл Excel.

Давайте теперь предположим, что вы хотите экспортировать данные в текстовый файл, на вкладке «Внешние данные» щелкните текстовый файл.

Укажите параметры экспорта и нажмите ОК. Вы увидите диалоговое окно «Кодирование», в котором мы хотим экспортировать данные в кодировке по умолчанию.

Выберите первый вариант и нажмите ОК.

На этом экране мастера Access обычно спрашивает, хотите ли вы сохранить сведения об операции экспорта. Если вы думаете, что вам нужно будет выполнять одну и ту же операцию на постоянной основе, выберитеSave export steps установите флажок и закройте диалоговое окно.

Теперь вы увидите, что текстовый файл открыт.

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