Вычисляемые поля аксесс - IT Новости
Microclimate.su

IT Новости
497 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

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

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

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

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

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


Рис. 1. Построитель выражений

С ее помощью можно выполнять различные вычисления с использованием данных, находящихся в БД — полей таблиц, запросов, форм и отчетов. Все перечисленные объекты БД находятся, соответственно, в папках Таблицы, Запросы, Forms и Reports в левой части Построителя.

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

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

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


Рис. 2. Построитель выражений. Встроенные функции


Рис. 3. Построитель выражений. Текстовая функция Left

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

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

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

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

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

Фамилия & Символ Пробела & Инициал имени & Символ точки & Инициал отчества & Символ точки.

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

Фамилия & » » & Инициал имени & «.» & Инициал отчества & «.».

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

Фамилия & » » &

Для работы с текстовыми значениями используются функции категории Текстовые. Чтобы получить инициал имени, необходимо воспользоваться одной из функций данной категории, а именно — функцией Lеft, которая возвращает первые n символов указанной строки.

Чтобы добавить функцию в выражение, необходимо дважды щелкнуть на папке Функции и выбрать после этого раздел Встроенные функции (рис. 2).

Затем во втором столбце необходимо выбрать требуемую категорию, в данном случае Текстовые, и после этого в третьем столбце выбрать нужную функцию, т.е. Left (рис. 3).

Читать еще:  Примеры презентаций в powerpoint смотреть

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

Left («stringexpr»; «n») ,

в котором необходимо указать значения требуемых параметров. В частности, вместо stringexpr нужно указать поле Имя, а вместо n — количество символов, которые необходимо получить из строки, т.е. 1. Таким образом, текущее выражение примет вид:

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


Рис. 4. Построитель выражений. Поле Имя таблицы Преподаватели

Таким образом, название поля с указанием имени таблицы необходимо отображать в следующем формате:

[Имя таблщы] ! [Название поля]

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

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

Названия полей запроса формируются автоматически. Для полей таблиц названия совпадают с названиями соответствующих полей запроса (например, поле Название). С другой стороны, названия вычисляемых полей формируются автоматически; Выражение1, Выражение2 и т. д. Очевидно, что такие названия не являются информативными.

Чтобы установить подпись для поля в таблице или запросе, необходимо в режиме конструктора установить курсор в требуемое поле (в частности, в поле Выражение1) и нажать кнопку Свойства . После этого в диалоговом окне Свойства поля можно на вкладке Общие указать в строке Подпись то название поля, которое будет использоваться вместо исходного в режиме редактирования запроса (или таблицы), а также в формах и отчетах. В частности, для вычисляемого поля Выражение1 можно указать подпись ФИО (рис. 5).


Рис. 5. Диалоговое окно Свойства поля

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


Рис. 6. Запрос на выборку с вычисляемым полем ФИО

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

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

Предыдущий шаг Содержание Следующий шаг

Создание вычисляемых полей

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

  1. Создайте свободный элемент управления типа Поле (Text Box) в нужном месте формы.
  2. Прямо в поле введите выражение =Date (). Знак равенства обязателен.
  3. Откройте окно Свойства (Properties) для этого элемента и задайте для свойства Формат поля (Format) желаемый формат даты, например Длинный формат даты (Long Date).
  4. Установите длину поля таким образом, чтобы в нем помещалось необходимое количество символов.
  5. Измените название метки этого текстового поля. Созданное поле будет выглядеть, как показано на рис. 9.47.

Рис. 9.47. Вычисляемое поле

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

Именно в свойстве Данные (Control Source) должно быть задано выражение, которое вычисляет значение этого элемента. Ввод выражения допускается прямо в элемент управления, как мы и сделали это в примере. Однако, если выражение достаточно длинное, его неудобно вводить прямо в поле. Можно ввести выражение в ячейку свойства Данные (Control Source) в окне Свойства (Properties), а если выражение не помещается в ячейке свойства, просто нажать комбинацию клавиш + и открыть окно Область ввода (Zoom). Еще можно воспользоваться Построителем выражений.

Читать еще:  Красивые шрифты для powerpoint

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

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

Замечание

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

Первый способ в большинстве случаев предпочтительнее, т. к. такой запрос может быть использован не только в одной форме, но и в отчетах и в других формах. Примером такой организации расчетов может служить форма «Подчиненная форма заказов» (Orders Subform) базы данных «Борей». Она основана на запросе «Сведения о заказах» (Order Details Extended), в котором создано вычисляемое поле «ОтпускнаяЦена» (ExtendedPrice), содержащее формулу:

в примере английской версии Access:

Свойство Данные (Control Source) элемента управления ОтпускнаяЦена

(ExtendedPrice) в форме имеет значение «ОтпускнаяЦена» (ExtendedPrice) — имя вычисляемого поля запроса.

Замечание

В приведенной выше формуле CCur — это функция, которая преобразует значение выражения в тип Денежный (Currency).

Вычисляемые поля в запросе БД Access 2003

Вычисления в запросе БД Access 2003

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

Выражения могут содержать следующие элементы:

  • идентификаторы (имя поля и элемента управления, которые заключаются в квадратные скобки);
  • операторы (арифметические, логические, сравнения и другие операторы);
  • функции (готовые формулы, которые состоят из имени и аргумента, помещенного в круглые скобки)
  • константы (элементы, которые не изменяются в Выражении, например Null, Истина, Ложь);
  • значения (например, значения даты и времени, численные положительные или отрицательные значения).
  • =[Оценка]/1,2, где «=» — опрератор, [Оценка] — имя поля, а 1,2 — значение;
  • Date(), где Date — имя функции текущей даты, которая не имеет аргумента.

Рассмотрим создание вычисляемых полей в бланке запроса базы данных Access 2003. Для ввода Выражения в запрос его необходимо открыть в режиме Конструктора. Чтобы создать вычисляемое поле в запросе (в существующем или вновь создаваемом запросе) открытого в режиме конструктора, необходимо ввести Выражение в строку Поле свободного столбца бланка запроса. Выражение может выполнять вычисления, обрабатывать текст, указывать время и дату, проверять данные и т.д. Необходимо отметить, что каждая формула вычисляется только для отдельной строки таблицы бланка запроса.

Рассмотрим создание вычисляемого поля в бланке запроса на примере базы данных Training_students_VP. Постановка задачи: в запросе на выборку (Запрос 3) создать поле, в котором должны отображаться итоговые оценки (ниже на 20% от полученных по результатам рейтинга). Для решения этой задачи откроем бланк «Запроса 3» в режиме конструктора (Рис. 1).

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

Читать еще:  Скачать аксес 2020

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

Для поставленной задачи в Построитель можно ввести выражение =[Оценка]/1,2 с клавиатуры (Рис.2) и щелкнуть на кнопке ОК.

В результате в бланке запроса появится вычисляемое поле =[Оценка]/1,2

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

С учетом вышеизложенного следует изменить название вычисляемого поля и отформатировать его. Для этого необходимо вернуться в режим конструктора и слово Выражение1 заменить на «Итог_оценка». Затем щелкнуть правой кнопкой мыши на вычисляемое поле и в контекстном меню выбрать команду Свойства, откроется диалоговое окно Свойства поля (Рис. 5)

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

Copyright

© Обучение в интернет, .
Обратная связь

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

03.05.2019, 15:36

Вычисляемое поле
Подскажите как в Access 2010 осуществить следующее вычисление?? Если = а и = а, тогда = (3+3)6 .

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

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

Вычисляемое поле
Всем привет. Очень нужна помощь. Мне нужно создать вычисляемое поле, чтобы в нём считалась общая.

03.05.2019, 15:592

При всем уважении к Вам и Micrsoft.
НЕ используйте вычисляемые поля. Совсем. Все вычисления только в запросах. Или в формах. Но не в таблицах.

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

03.05.2019, 17:01303.05.2019, 17:49403.05.2019, 17:56503.05.2019, 18:016

Это показатель не формата файла, а версии Access.

А формат файла указан именно в «красной полосочке» — «. Database1.mdb (формат Access 2002-2003) . «.

03.05.2019, 18:14703.05.2019, 18:25803.05.2019, 18:449

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

Добавлено через 2 минуты
Тем более ТС пишет, что смог создать такой тип файла, значит это переименованый — accdb.

04.05.2019, 12:00 [ТС]10

Я просто в программе нажал «сохранить как» и там выбрал 2000-20003 год программы, потому что мне нужно расширение mdb для delphi, потому что другие форматы файлов не канают.

Добавлено через 25 минут
Всем спасибо за демагогию.
Решение: Вычисляемое поле в DbGrid
в делфи писал так:

Delphi
04.05.2019, 12:1111
06.05.2019, 05:5912
06.05.2019, 05:59
06.05.2019, 05:59

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

ВЫЧИСЛЯЕМОЕ ПОЛЕ
Подскажите пожалста, как правильно записать формулу подсчета. БД для отеля. Необходимо подсчитать.

Вычисляемое поле
Привет! В общем в БД «основные средства» есть поле «Код амортизационного отчисления» В нем три.

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

вычисляемое поле
Здравствуйте, не получается создать вычисляемое поле в MS Access 2010 в следующей таблице: дата.

0 0 голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector