Помощь в написании студенческих работ
Антистрессовый сервис

Запросы к базе данных

РефератПомощь в написанииУзнать стоимостьмоей работы

Перейти в режим Создание, панель инструментов Другие, кнопка Мастер запросов, указать Перекрестный запрос. Включить в выходную таблицу вычисляемое поле: Себестоимость, с помощью Построителя ввести выражение: Разместить в выходной таблице вычисляемое поле: Затраты, с помощью Построителя указать выражение: К серверу — выполняются на удаленном сервере базы данных, а результат передается СУБД Access… Читать ещё >

Запросы к базе данных (реферат, курсовая, диплом, контрольная)

Существуют различные виды запросов: выборки, сохранения результата запроса в новой таблице, обновления значений полей записей, добавления новых или удаления существующих записей, «перекрестный» и другие, в которых задаются условия отбора, сортировки или группировки записей, вычисляются статистические итоги, вычисляются новые поля и т. п. Запросы создаются с помощью графического реляционного языка QBE (Query By Example) и языка SQL. При этом запросы QBE имеют эквивалент на языке SQL.

" Чистые" запросы SQL, не имеющие эквивалентов на языке QBE:

  • объединение — объединяются данные во временном наборе записей, который не сохраняется после закрытия запроса;
  • к серверу — выполняются на удаленном сервере базы данных, а результат передается СУБД Access;
  • управляющие — создание, удаление или изменение различных объектов базы данных.

Для запроса используются таблицы базы данных или другие ранее созданные запросы, т. е. запрос использует определенную подсхему данных.

Рассмотрим наиболее типичные примеры.

1. Запрос на выборку «Затраты ресурсов на продукцию» .

Запрос выборки с вычисляемым полем.

Рис. 10.40. Запрос выборки с вычисляемым полем.

Для подготовки этого запроса (рис. 10.40) следует действовать так:

  • • Перейти в режим Создание, панель инструментов Другие, кнопка Конструктор запросов.
  • • Для создания подсхемы данных выбрать таблицы: ПРОДУКЦИЯ, РЕСУРС, НОРМА (связи автоматически переносятся из схемы данных).
  • • Разместить в выходной таблице поля таблицы ПРОДУКЦИЯ: Код продукции, Наименование продукции, Единица измерения.
  • • Разместить в выходной таблице поле таблицы НОРМА: Код ресурса.
  • • Разместить в выходной таблице поля таблицы РЕСУРС: Наименование ресурса, Вид ресурса.
  • • Разместить в выходной таблице вычисляемое поле: Затраты, с помощью Построителя указать выражение:

Затраты: [НОРМА]![Норма расхода]*.

[РЕСУРС]![Цена ресурса]/[НОРМА]![Единица нормирования].

• На Странице свойств запроса указать: Вывод всех полей — Нет.

Запрос на языке SQL:

SELECT ПРОДУКЦИЯ. Код продукции],.

ПРОДУКЦИЯ. Наименование продукции],.

ПРОДУКЦИЯ. Единица измерения продукции],.

НОРМА. Код ресурса], РЕСУРС. Вид ресурса],.

РЕСУРС. Наименование ресурса],.

[НОРМА]![Норма расхода]*[РЕСУРС]![Цена ресурса]/[НОРМА]![Единица нормирования] AS Затраты FROM РЕСУРС INNER JOIN (ПРОДУКЦИЯ INNER JOIN НОРМА ON ПРОДУКЦИЯ. Код продукции] = НОРМА. Код продукции]) ON РЕСУРС. Код ресурса] = НОРМА. Код ресурса];

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

2. Запрос выборки с группировкой строк «Нормативная себестоимость продукции» .

Запрос на языке QBE создается следующим образом (рис. 10.41):

Для подготовки данного запроса требуется выполнять указанные операции:

• Перейти в режим Создание, панель инструментов Другие, кнопка Конструктор запросов.

Схема запроса с группировкой строк.

Рис. 10.41. Схема запроса с группировкой строк.

  • • Для создания подсхемы данных выбрать таблицы: ПРОДУКЦИЯ, РЕСУРС, НОРМА (связи автоматически переносятся из схемы данных).
  • • Разместить в выходной таблице поля таблицы ПРОДУКЦИЯ: Код продукции, Наименование продукции, Единица измерения.
  • • Включить в выходную таблицу вычисляемое поле: Себестоимость, с помощью Построителя ввести выражение:
  • • Норм_Себестоимость:[РЕСУРС]![Цена ресурса]* [НОРМА]![Норма расхода]/[НОРМА]![Единица нормирования]
  • • С помощью кнопки Итоги сформировать итог по ПОЛЮ Норм_Себестоимость с функцией Sum
  • • В Странице свойств запроса указать: Вывод всех полей — Нет.

Запрос на языке SQL:

SELECT ПРОДУКЦИЯ. Код продукции],.

ПРОДУКЦИЯ. Наименование продукции], ПРОДУКЦИЯ. Единица измерения продукции], Sum ([РЕСУРС]![Цена ресурса]*[НОРМА]![Норма расхода]/[НОРМА]![Единица нормирования]).

AS Норм_Себестоимость FROM РЕСУРС INNER JOIN (ПРОДУКЦИЯ INNER JOIN НОРМА ON ПРОДУКЦИЯ. [Код продукции] =.

НОРМА. [Код продукции]) ON РЕСУРС. [Код ресурса] =.

НОРМА. Код ресурса]GROUP BY ПРОДУКЦИЯ. Код продукции],.

ПРОДУКЦИЯ. Наименование продукции],.

ПРОДУКЦИЯ. Единица измерения продукции];

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

3. Запрос на создание таблицы «Новая таблица» .

Для подготовки данного запроса надо выполнить следующие шаги:

  • • Перейти в режим Создание, панель инструментов Другие, кнопка Конструктор запросов.
  • • Для создания подсхемы данных выбрать запрос: Нормативная себестоимость продукции.
  • • Нажать кнопку Создание таблицы, ввести имя таблицы — СЕБЕСТОИМОСТЬ.

Текст запроса на SQL:

SELECT * INTO СЕБЕСТОИМОСТЬ FROM.

[Нормативная себестоимость продукции];

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

4. Запрос на обновление таблицы «Новая себестоимость и прибыль продукции» .

Для подготовки этого запроса требуется выполнить приведенные ниже действия:

  • • Перейти в режим Создание, панель инструментов Другие, кнопка Конструктор запросов.
  • • Для создания подсхемы данных выбрать таблицы: ПРОДУКЦИЯ, СЕБЕСТОИМОСТЬ.
  • • Нажать кнопку Обновление.
  • • Указать для поля Себестоимость таблицы ПРОДУКЦИЯ:

[СЕБЕСТОИМОСТЬ]![Норм_Себестоимость].

• Указать для поля Прибыль на единицу продукции таблицы:

[ПРОДУКЦИЯ]![Цена];

IIf (IsNulK[ПРОДУКЦИЯ]![Себестоимость]);0; [ПРОДУКЦИЯ]![Себестоимость]);

IIf (IsNull ([ПРОДУКЦИЯ]![Накладные расходы]); 0; [ПРОДУКЦИЯ]![Накладные расходы]).

• Текст запроса на SQL:

UPDATE ПРОДУКЦИЯ INNER JOIN СЕБЕСТОИМОСТЬ ON ПРОДУКЦИЯ. Код продукции] = СЕБЕСТОИМОСТЬ. [Код продукции].

SET ПРОДУКЦИЯ. Себестоимость = [СЕБЕСТОИМОСТЬ] ! [Норм_Себестоимость] ,.

ПРОДУКЦИЯ. Прибыль на единицу продукции] = [ПРОДУКЦИЯ]![Цена]-Ilf (IsNull ([ПРОДУКЦИЯ] ![Себестоимость]), О, [ПРОДУКЦИЯ]![Себестоимость ]) ;

Ilf (IsNull ([ПРОДУКЦИЯ]![Накладные расходы]), О,[ПРОДУКЦИЯ]![Накладные расходы]);

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

5. Запрос на удаление записей «Очистить СЕБЕСТОИМОСТЬ» .

Для подготовки этого запроса необходимо выполнить указанные шаги:

  • • Перейти в режим Создание, панель инструментов Другие, кнопка Конструктор запросов.
  • • Для создания подсхемы данных выбрать таблицу СЕБЕСТОИМОСТЬ.
  • • Нажать кнопку Удаление.
  • • Текст запроса на SQL:

DELETE * FROM СЕБЕСТОИМОСТЬ;

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

6. Запрос на удаление таблицы «Удалить СЕБЕСТОИМОСТЬ» .

Для подготовки этого запроса требуется выполнить указанные операции:

  • • Перейти в режим Создание, панель инструментов Другие, кнопка Конструктор запросов.
  • • Перейти в режим SQL, ввести оператор:

DROP TABLE СЕБЕСТОИМОСТЬ;

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

7. Перекрестный запрос «Структура затрат на продукцию» .

Для подготовки этого запроса надо выполнить следующие действия:

  • • Перейти в режим Создание, панель инструментов Другие, кнопка Мастер запросов, указать Перекрестный запрос.
  • • Выбрать запрос Затраты ресурсов на продукцию.
  • • Указать в качестве строк поля: Вид ресурса, Код ресурса.
  • • Указать в качестве столбцов — Код продукции.
  • • Итоговое поле — Затраты, функция итога — Sum.

Текст запроса на SQL:

TRANSFORM Sum ([Затраты ресурсов на продукцию] .Затраты).

AS [Sum-Затраты].

SELECT [Затраты ресурсов на продукцию]. [Вид ресурса],.

[Затраты ресурсов на продукцию]. Код ресурса] ,.

Sum ([Затраты ресурсов на продукцию]. Затраты).

AS [Итоговое значение Затраты].

FROM [Затраты ресурсов на продукцию].

GROUP BY [Затраты ресурсов на продукцию]. [Вид ресурса], [Затраты ресурсов на продукцию]. [Код ресурса].

PIVOT [Затраты ресурсов на продукцию].

[Код продукции];

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

Показать весь текст
Заполнить форму текущей работой