Как переименовать запрос в access
Создание и изменение запроса с помощью Конструктора запросов
Для изменения уже существующих запросов и для создания новых запросов используется Конструктор запросов. Для того чтобы открыть запрос в режиме Конструктора, выделите в списке один из существующих запросов, например только что созданный запрос «Сотрудники Запрос», и нажмите кнопку Конструктор (Design) на панели инструментов окна База данных (Database).
Появляется окно Конструктора запросов (рис. 4.5). В верхней части окна отображается таблица (или несколько таблиц, если запрос многотабличный) в том виде, в каком таблицы отображаются в окне Схема данных (Relationship). Таблицы — источники данных для запроса, мы будем называть базовыми таблицами запроса. В нижней части окна находится бланк запроса — таблица, ячейки которой используются для определения запроса. В бланке отображаются все столбцы, включенные в результирующее множество запроса.
Для того чтобы просматривать полностью бланк запроса и все исходные таблицы, используют линейки прокрутки.
В области панелей инструментов Access отображается панель инструментов Конструктор запросов (Queries Design). Эта панель представлена на рис. 4.6, а в табл. 4.1 приведено описание кнопок этой панели инструментов и соответствующие им команды меню.
Рис. 4.5. Запрос «Сотрудники Запрос» в режиме Конструктора запросов
Рис. 4.6. Панель инструментов Конструктор запросов
Таблица 4.1. Описание кнопок на панели инструментов Конструктор запросов
С использованием кнопок панели инструментов вы будете знакомиться по мере изучения работы с запросами, как в данной главе, так и в гл. 8.
А теперь рассмотрим, как создать новый запрос с помощью Конструктора запросов. Для этого необходимо:
- В окне базы данных на панели объектов выбрать ярлык Запросы (Queries).
- В списке запросов выбрать ярлык Создание запроса в режиме конструктора (Create query in Design view) или нажать кнопку Создать (New), в появившемся окне Новый запрос (New Query) выбрать Конструктор (Design view) и нажать на кнопку ОК.
- В окне Добавление таблицы (Show Table) (см. рис. 4.5) выбрать одну или несколько таблиц или запросов для построения нового запроса и нажать кнопку Добавить (Add). Для удобства выбора таблиц и запросов в окне существуют следующие вкладки: Таблицы (Tables), на которой отображается список таблиц; Запросы (Queries), на которой отображается список запросов; Таблицы и запросы (Both), на которой отображается список таблиц и запросов вместе.
Рис. 4.7. Окно Добавление таблицы Конструктора запросов
Рис. 4.8. Запрос по нескольким связанным таблицам
Иногда Конструктор устанавливает лишние связи, основываясь только на именах и типах полей. Это может привести к некорректным результатам запроса, поэтому нужно обязательно проверять, как отображаются связи между таблицами в окне Конструктора запросов, и удалить вручную лишние связи. Для этого выделите лишнюю связь, щелкнув по ней левой кнопкой мыши, и нажмите клавишу . Работа со связями в окне Конструктора запросов выполняется точно так же, как в окне Схема данных (Relationship) (см. разд. «Связывание таблиц на схеме данных»гл. 2).
Примеры разных способов включения полей в результат запроса в режиме Конструктора запросов приведены на рис. 4.9—4.11.
Рис. 4.9. Пример отбора полей для нового запроса в режиме Конструктора
Рис. 4.10. Вид окна Конструктора при выборе всех полей из таблицы
Чтобы добавить в запрос еще одну таблицу или другой запрос, необходимо:
- Нажать кнопку Добавить таблицу (Show Table) на панели инструментов или выполнить команду меню Запрос, Добавить таблицу (Query, Show Table).
Рис. 4.11. Выбор полей запроса из раскрывающегося списка
Если нужная таблица находится в другой базе данных или другом приложении, необходимо сначала присоединить эту таблицу к текущей базе данных.
Добавить таблицу или еще один запрос в окно Конструктора запросов можно также путем перетаскивания мышью названия таблицы или запроса из окна базы данных.
Чтобы удалить базовую таблицу из запроса, необходимо выделить ее, щелкнув на любом месте в списке ее полей, и нажать клавишу .
Чтобы удалить поле из запроса, выделите нужный столбец в бланке запроса, а затем нажмите клавишу . Чтобы выделить столбец, пользуйтесь областью выделения столбцов — узкой серой полоской над столбцами в бланке запроса. Когда вы подводите указатель мыши к этой области, он преобразуется в жирную стрелку, направленную вниз.
Поля в таблице, являющейся результатом запроса, отображаются в том порядке, в котором они следуют в бланке запроса. Если требуется изменить порядок их следования, переставьте соответствующим образом столбцы в бланке запроса. Делается это стандартным способом, т. е. сначала выделяется нужный столбец или несколько столбцов, а затем они перетаскиваются мышью на новое место. При этом отпускать кнопку мыши нужно тогда, когда указатель мыши окажется перед тем столбцом, который делжен быть справа от вставляемого столбца. После вставки все столбцы, расположенные справа от указателя, сдвигаются вправо. Если вы перемещаете столбцы в конец запроса, то отпускайте кнопку мыши, когда указатель окажется перед первым свободным столбцом.
В режиме Конструктора запросов можно изменять имена полей запроса. Чтобы переименовать поле, необходимо установить курсор в бланке запроса перед первой буквой его имени и ввести новое имя и символ двоеточия. Пример запроса с измененными именами полей приведен на рис. 4.12. Изменение имени поля в бланке запроса приводит к изменению заголовка столбца при просмотре запроса в режиме таблицы. Кроме того, если на основе запроса создать новый объект, например форму или отчет, в новом объекте будет использовано новое имя поля. Имя поля базовой таблицы при этом не изменяется. Это имя также не изменяется в тех формах и отчетах, которые были созданы на основе запроса до изменения имени поля. Имена полей в запросах должны соответствовать соглашениям об именах Microsoft Access.
Рис. 4.12. Изменение названия поля в запросе
Чтобы использовать новое имя поля только в заголовках столбцов в режиме таблицы или как подпись полей в формах и отчетах, следует задать для этого поля свойство Подпись (Caption), а не переименовывать поле в бланке. (Об установке свойств поля см. разд. «Настройка свойств полей в запросе и свойств самого запроса»гл. 8)
Ширина столбцов в бланке запроса также может меняться. Осуществляется это простым перетаскиванием мышью границы столбца или двойным щелчком мыши по линии границы, как это делается в таблице Excel.
Изменение ширины столбцов в окне Конструктора запросов или в окне расширенного фильтра не влияет на ширину столбцов запроса в режиме Таблицы или объекта, для которого применен фильтр.
В строке Условие отбора (Criteria) и в строке или (Or) указываются условия отбора записей. Такими условиями могут быть логические выражения. Например, (>30), (=’Иванов’), (=10) и т. п. (0 создании выражений в условиях запроса см. разд. «Использование выражений в запросах» ниже в этой главе.)
Условия, находящиеся в одной строке, но в разных столбцах бланка, объединяются по логическому оператору And (И). Если нужно объединить условия отбора по логическому оператору Or (ИЛИ), разместите эти условия в разных строках бланка запроса. Пример использования нескольких условий отбора приведен на рис. 4.13.
Рис. 4.13. Задание критериев отбора записей в запросе
Если критерий отбора очень сложный, можно вставлять дополнительные строки условий. Для этого необходимо:
- Выделить строку, которая должна оказаться под вставляемой строкой. Для этого нужно подвести указатель мыши к левой границе строки (он должен превратиться в жирную стрелку, указывающую вправо) и щелкнуть левой кнопкой мыши.
- Выполнить команду Вставка, Строки (Insert, Rows) или нажать клавишу
Добавление в запрос полей из таблиц. Переименование, перемещение и удаление полей в конструкторе запросов
Типы запросов в СУБД MS Access. Способы создания запросов в СУБД MS Access.
Система управления базами данных (СУБД) — это программный продукт, предназначенный для создания баз данных, своевременного обновления хранящихся в них зонных и выдачи необходимой пользователю информации в виде форм, запросов, отчетов, диаграмм и почтовых наклеек.
Запрос —это требование на отбор данных, хранящихся в таблицах на выполнение определенных действии с данными. Запрос позволяет создать набор из записей, находящихся в разных таблицах, и использовать его как источник данных для формы или отчета. Кроме того, запрос дает возможность вносить изменения в саму БД.
Запросы предназначены для просмотра, анализа и изменения информации хранящейся в БД.
Способы создания запросов в СУБД MS Access.Access позволяет создавать запросы в Режиме конструктора (самостоятельно) и с помощью программ- мастеров.
В Access имеется 4 мастера запросов:
- простой запрос —позволяет лишь выводить нужную часть полей из источника запроса и при необходимости подводить Итог;
- перекрестный запрос — позволяет компактно представить данные в формате подобно формату электронных таблиц
- повторяющиеся записи — позволяет найти записи с повторяющимися значениями полей и в том числе полностью
- записи без подчиненных —позволяет найти записи в одной таблице не имеющие подчиненных записей в другой таблице
При необходимости запрос, созданный в Режиме мастера, можно отредактировать в Режиме конструктора.
Создание запроса с помощью конструктора. Окно конструктора запросов.
Запрос —это требование на отбор данных, хранящихся в таблицах на выполнение определенных действии с данными. Запрос позволяет создать набор из записей, находящихся в разных таблицах, и использовать его как источник данных для формы или отчета. Кроме того, запрос дает возможность вносить изменения в саму БД.
Для создания запроса в окне базы данных перейдите к списку запросов. Нажмите кнопку Создать. Появится диалоговое окно «Новый запрос», из опций которого нужно выбрать пункт «Конструктор» и нажать OK. В появившемся диалоговом окне (Рис. 2.11) следует выбрать таблицы, из которых будут отобраны данные.
После добавления необходимых таблиц следует нажать на кнопку Закрыть. Появится окно конструирования запроса
Окно конструктора запросов разделяется на три области: область схемы, область сетки и область SQL.
Область схемы. Отображает таблицы, представления а также определяемые пользователем функции, по которым выполняется запрос. В каждом окне, представляющем таблицу, представление или встроенную функцию, отображаются все доступные столбцы данных, а также значки, показывающие, как каждый столбец используется в запросе. Объединения отображаются как линии между окнами объектов.
Область сетки. Содержит сетку, аналогичную электронной таблице, в которой задаются параметры запроса, такие как имена отображаемых столбцов, условия отбора строк и группировки записей и т.д.
Область SQL. Отображает запрос в виде инструкции SQL. Пользователь имеет возможность редактировать инструкцию SQL, созданную с помощью конструктора запросов, или самостоятельно ввести инструкцию SQL. Эта область используется также для ввода инструкций SQL, которые невозможно создать с помощью области схемы или сетки, как в случае запроса на объединение.
При создании запроса допускается использование любой из трех областей: Чтобы задать отображение столбцы, можно выбрать его в области схемы, ввести в области сетки или включить в инструкцию SQL в области SQL. Области схемы, сетки и SQL синхронизируются; изменения, внесенные в одной области, автоматически отражаются в других.
Бланк запроса по образцу
Бланк запроса по образцу представлен в виде таблицы в нижней панели окна запроса. До формирования запроса эта таблица пуста.
Каждый столбец бланка относится к одному полю, с которым нужно работать в запросе. Поля могут использоваться для включения их в результат выполнения запроса, для задания сортировки по ним, а также для задания условий отбора записей.
Добавление в запрос полей из таблиц. Переименование, перемещение и удаление полей в конструкторе запросов.
При заполнении бланка запроса необходимо:
в строку Поле включить имена полей, используемых в запросе;
в строке Вывод на экран отметить поля, которые должны быть включены в результирующую таблицу;
в строке Условие отбора задать условия отбора записей;
в строке Сортировка выбрать порядок сортировки записей результата.
Поля бланка запроса
Каждый столбец бланка запроса соответствует одному из полей таблиц, на которых строится запрос. Кроме того, здесь может размещаться вычисляемое поле, значение которого вычисляется на основе значений других полей.
Для включения нужных полей из таблиц в соответствующие столбцы запроса можно воспользоваться следующими приемами:
в первой строке бланка запроса Поле щелчком мыши вызвать появление кнопки списка и выбрать из списка нужное поле. Список содержит все поля таблиц, представленных в бланке запроса;
перетащить нужное поле из списка полей таблицы в схеме данных запроса в первую строку бланка запроса.
В списке полей каждой таблицы на первом месте стоит символ *, который означает «все поля таблицы». Этот пункт выбирается, если в запрос включаются все поля.
Чтобы переименовать поле в режиме Конструктора таблиц, необходимо:
Щелкнуть левой кнопкой мыши в столбце Имя поля (Field Name) на имени поля, подлежащего переименованию.
Ввести новое имя поля или отредактировать старое имя.
Нажать клавишу или переместить указатель текущей записи на любую другую запись.
Чтобы вставить поле в режиме Конструктора таблиц, необходимо сначала выделить строку, перед которой необходимо вставить поле. Для этого нужно щелкнуть левой кнопкой мыши в области выделения. После этого вставить новое поле можно одним из трех способов:
нажать кнопку Добавить строки (Insert Rows) на панели инструментов Конструктор таблиц (Table Design);
выбрать в главном меню команду Вставка (Insert) и из раскрывающегося меню выбрать команду Строки (Rows);
щелкнуть правой кнопкой мыши на выделенной записи и из контекстного меню выбрать команду Добавить строки (Insert Rows).
Затем в полученную пустую строку нужно ввести имя нового поля, тип и описание.
Чтобы вставить сразу несколько строк, необходимо выделить требуемое количество существующих строк, перед которыми нужно вставить новые, а затем выполнить команду вставки строк в соответствии с приведенной выше процедурой.
Чтобы удалить поле в режиме Конструктора таблиц, выделите строку (строки) описания поля (полей), которую необходимо удалить. Затем используйте любой из трех вариантов удаления выделенной строки (строк):
выбрать из главного меню команду Правка (Edit) и из раскрывающегося меню — команду Удалить (Delete) или Удалить строки (Delete Rows);
нажать на клавишу ;
щелкнуть правой кнопкой мыши на выделенной строке (строках) и из контекстного меню выбрать команду Удалить строки (Delete Rows).
При удалении полей, в которых содержатся или могут содержаться данные, Microsoft Access потребует подтверждения на удаление данного поля.
Изменение запроса
Запрос, сохраненный в базе данных Microsoft Access 2007, можно изменять. У вас есть возможность корректировать имя запроса, править его текст в формате SQL, а также редактировать запрос в конструкторе запросов. Ниже представлены несколько наиболее распространенных действий, производимых над запросами.
Переименовать запрос можно, выполнив следующие команды.
1. Откройте запрос, сохраненный в базе данных Microsoft Access 2007.
2. Правой кнопкой мыши щелкните на имени запроса в области переходов и в появившемся контекстном меню выберите команду Переименовать .
3. Теперь переименуйте имя запроса и затем нажмите клавишу Enter .
Правка запроса в конструкторе
Используя бланк запроса в режиме конструктора, модифицировать существующий запрос можно следующими способами.
• Удалить таблицу из запроса можно, если выделить ее в запросе и нажать клавишу Delete .
• Удалить поле таблицы можно, выделив желаемый столбец с помощью области выделения столбцов (серая полоска над столбцами) и затем нажав клавишу Delete .
• Изменить порядок следования полей можно следующим образом: выделите поле или несколько полей и, удерживая нажатой кнопку мыши, перетащите их на нужное место, затем отпустите кнопку мыши.
• Условия отбора записей из базовой таблицы указываются в строках Условие отбора и Или . Данными условиями могут являться любые логические выражения. Существуют условия, которые находятся в одной строке, но в разных столбцах бланка, такие условия объединяются по логическому оператору AND (И). Чтобы объединить условия по логическому оператору OR (ИЛИ), нужно объединить данные условия в разных строках бланка запроса.
Строка Сортировка помогает установить порядок сортировки записей в запросе. Для поля, записи которого вы хотите сортировать, выберите из списка порядок сортировки: По убыванию или По возрастанию . Если в запросе вам нужно отсортировать записи по нескольким полям, разместите эти поля слева направо.
Если вы хотите изменить имена полей запроса, то это можно сделать в режиме конструктора. Чтобы переименовать поле, вам нужно в бланке запроса установить текстовый курсор перед первой буквой его имени, после чего ввести новое имя, а также символ двоеточия. Если вы измените имя поля в бланке запроса, в отчете оно также изменится.
В бланке запросов вы также можете изменить ширину столбцов. Это можно сделать, перетаскивая границу столбца или два раза щелкнув кнопкой мыши на линии границы. Причем данное изменение производится только в бланке запросов.
Теперь рассмотрим вышесказанное на примере. Выполните следующие действия, чтобы модифицировать запрос с помощью конструктора.
1. Откройте базу данных, которая содержит нужный запрос.
2. Выбранный запрос откроется в режиме таблицы, если вы щелкнете кнопкой мыши на имени запроса в области переходов.
3. Перейдите на вкладку Главная и в группе Режимы щелкните кнопкой мыши на стрелке под кнопкой Режимы . После этого появится меню, в котором нужно выбрать команду Конструктор (рис. 5.13).
Рис. 5.13. Меню для выбора режима
4. На экране появится бланк запроса.
Теперь осталось изменить запрос. Вы можете выполнить любые действия.
• Добавить в бланк запроса как минимум одно поле таблицы, нажав при этом в строке Поле свободную ячейку. Раскрыв список полей таблицы, выберите необходимое имя поля. Данную операцию следует повторить для всех полей таблицы, которые вы желали бы добавить в бланк запроса.
• В результате набора данных при необходимости скрыть или отобразить значение поля таблицы (флажок в строке Вывод на экран необходимо снять или установить соответственно). Значение поля не отображается, если флажок под названием поля в бланке запроса снят.
• Сортировку данных поля таблицы можно выполнить следующим образом: щелкните кнопкой мыши на ячейке строки Сортировка под названием необходимого вам поля, раскройте список сортировок, после чего выберите нужный вариант: по возрастанию , по убыванию , отсутствует .
• Задать условие для нужных полей таблицы. Для этого в ячейках строки Условие введите требуемые значения. Используя строки без подписи или строку Или , можно создать для одного поля таблицы друг друга исключающие условия.
5. Например, модифицируйте запрос с именем Клиенты Запрос . В этом запросе отображались поля Имена , Телефоны , Адреса таблицы Клиенты . Модифицируйте его, добавляя колонку Рейтинг и выполняя сортировку строк по последнему.
6. В строке Поле щелкните кнопкой мыши на незаполненной ячейке после названия Адрес , выберите в списке название Рейтинг .
7. Снимите флажок Вывод на экран для поля Рейтинг .
8. Щелкните кнопкой мыши на параметре Сортировка поля Рейтинг . На экране появится список доступных вариантов сортировки. Выберите вариант По возрастанию , бланк запроса изменится (рис. 5.14).
Рис. 5.14. Измененный бланк запроса
9. Для сохранения запроса нажмите кнопку Сохранить . Чтобы увидеть сохраненное, щелкните кнопкой мыши на вкладке Конструктор , а затем нажмите кнопку Выполнить . Отобразится измененный запрос (рис. 5.15).
Рис. 5.15. Измененный запрос
Далее будет рассмотрено изменение исходного запроса способом правки запроса в SQL-редакторе.
Данный текст является ознакомительным фрагментом.
Запросы на изменение с помощью инструкций SQL
Запросы на изменение записей в таблицах с помощью SQL
Запросы на изменение используются для добавления (INSERT INTO), удаления (DELETE) и обновления (UPDATE) записей в таблицах.
Команда INSERT INTO
Команда INSERT INTO может быть использована для добавления одной или нескольких записей в конец таблицы.
Синтаксис команды INSERT INTO имеет следующий вид:
INSERT INTO Название_Таблицы [(Название_Полей)] VALUES (Значения_данных);
Создадим запрос на изменение записи в таблице «Группы» базы данных sql_training_st.mdb.
Например, поместим в таблицу «Группы» запись, содержащую данные (1, БФ-16а, 1, 1) в соответствующие столбцы (КодГруппы, Название, Курс, Семестр).
Для этого запрос в формате:
INSERT INTO Группы (КодГруппы, Название, Курс, Семестр) VALUES (1, БФ-16а, 1, 1);
введем на бланке запроса, выполнив команду «Конструктор запросов» на вкладке «Создание», в режиме «Режим SQL» из меню Вид.
Сохраняем запрос с именем «Добав_1_записи». В результате в «Области переходов» появится несвязанный объект — «Добав_1_записи» (Рис.1.).
После сохранения запроса необходимо выполнить этот запрос, щелкая на пиктограмме «Выполнить». В результате выполнения команды «Добав_1_записи» в пустой таблице появится первая запись (Рис. 2.)
Команда UPDATE
Команда UPDATE предназначена для изменения уже существующих записей в столбцах таблицы, что позволяет обновлять значения в заданных столбцах таблицы.
Синтаксис команды UPDATE имеет следующий вид:
UPDATE Название_Таблицы SET Название_Столбца = Новое_Значение WHERE Условие_Отбора;
В предложении SET указываются имена столбцов, данные в которых надо изменить. Оператор WHERE не является обязательным, но при его помощи можно указать только на те строки столбцов (таблиц), которые необходимо обновить.
Создадим запрос на изменение записи в таблице «Группы» базы данных sql_training_st.mdb.
Например, изменим уже существующую запись для первого ключевого поля id в столбце «Название» таблицы «Группы».
Запрос в формате:
UPDATE Группы SET Название =’БФ-16б’ WHERE > создаем на бланке запроса, выполнив команду «Конструктор запросов» на вкладке «Создание», в режиме «Режим SQL» из меню Вид.
Сохраняем запрос с именем «Изменение_записи_1». В результате в «Области переходов» появится объект — «Изменение_записи_1» (Рис. 3.).
После сохранения запроса необходимо выполнить этот запрос, щелкая на пиктограмме «Выполнить». В результате выполнения команды «Изменение_записи_1» появится окно диалога, в котором необходимо ввести значение параметра с БФ-16а на БФ-16б (Рис. 4.).
Команда DELETE
Команда DELETE предназначена для удаления записей из таблицы.
Формат запроса на удаление записей:
DELETE FROM Название_Таблицы WHERE Условие_Отбора;
Создадим запрос на изменение записи в таблице «Группы» базы данных sql_training_st.mdb.
Например, удалим существующую запись для первого ключевого поля id во всех столбцах (полях) таблицы «Группы».
Для этого запрос в формате:
DELETE FROM Группы WHERE > создаем на бланке запроса, выполнив команду «Конструктор запросов» на вкладке «Создание», в режиме «Режим SQL» из меню Вид.
Сохраняем запрос с именем «Удаление_записи_1». В результате в «Области переходов» появится объект — «Удаление_записи_1» (Рис. 5.).
После сохранения запроса необходимо выполнить этот запрос, щелкая на пиктограмме «Выполнить». В результате выполнения команды «Удаление_записи_1» появится окно диалога, в котором необходимо ввести значение параметра будет удалены данные во всех полях, т.е. удалена запись (Рис. 6.).
Следует отметить, что для удаления данных в конкретных полях таблицы целесообразно воспользоваться командой UPDATE и заменить значения в требуемых полях на Null. Если необходимо удалить таблицу в целом, то следует использовать оператор DROP TABLE (синтаксис оператора: DROP TABLE Название_Таблицы;).
Восстановим первую запись в таблице «Группы», выполнив команду «Добав_1_записи», в результате восстановим первую запись (Рис. 7.).