Определение полей результирующей таблицы — КиберПедия 

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

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

Определение полей результирующей таблицы

2017-10-16 636
Определение полей результирующей таблицы 0.00 из 5.00 0 оценок
Заказать работу

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

В Visual FoxPro существует несколько вариантов выбора полей результирующей таблицы.

1. Откройте вкладку Fields, выделите в списке Available fields поля, которые необходимо отобразить в запросе, и с помощью кнопки Add … перенесите их в список Selected fields. Кнопка Add All … позволяет произвести выбор сразу всех полей таблицы. Если для формирования запроса необходимо выбрать большую часть полей, то воспользуйтесь этой кнопкой, а затем выделите курсором поля, которые не нужно помещать в запрос, и удалите их из списка Selected fields с помощью кнопки Remove.

2. В Visual FoxPro широко используется механизм dgar-and-drop. Для использования этого механизма при выборе полей перейдите на панель, содержащую образы таблиц, используемых в запросе. Выделите нужные поля и переместите их с помощью манипулятора «мышь» в список Selected fields.

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

 

Запуск запроса на выполнение

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

1) нажмите кнопку Run (Выполнить) на стандартной панели инструментов;

2) выберите команду контекстного меню Run Query (Выполнить запрос);

3) выберите в меню Query (Запрос) команду Run Query (Выполнить запрос);

4) нажмите комбинацию клавиш «Ctrl» + «Q».

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

Аппаратура и материалы совпадают с приведенными в описании лабораторной работы 1.

Указания по технике безопасности совпадают с приведенными в описании лабораторной работы 1.

Задания для защиты работы

Базовый уровень

Задание 1. Используя конструктор запросов, организуйте выборку информации из базы данных «Стол заказов»:

1) всех потребителей, начинающихся на букву «С»;

2) всех товаров, произведенные в Российской Федерации;

3) всех поставщиков, расположенных на территории Ставропольского края.

Методика выполнения задания 1:

1. Откройте созданный проект «Стол заказов».

2. На вкладке Data выберите группу Queries. После этого нажмите кнопку New.

3. На экран будет выведено диалоговое окно New Queries, в котором также нажмите кнопку New Queries.

4. В диалоговом окне Add Table or View выберите таблицу, из которой надо произвести выборку значений. Например, «Журнал реализации».

5. Нажмите кнопку Add … для переноса её в окно конструктора запросов.

6. Выбор полей необходимых для создания запроса осуществите следующим образом:

1) активизируйте вкладку Fields;

2) в списке Available fields выделите поля, которые необходимо перенести в запрос;

3) нажмите кнопку Add для переноса выделенных полей в список Selected fields, если же необходимо перенести все поля, то нажмите кнопку Add All.

7. Запустите сгенерированный запрос на выполнение, нажав кнопку Run.

Повышенный уровень

Задание 2. В командном окне Visual FoxPro наберите SQL запросы для получения информации из базы данных «Стол заказов»:

1) всех потребителей, начинающихся на букву «С»;

2) всех товаров, произведенные в Российской Федерации;

3) всех поставщиков, расположенных на территории Ставропольского края.

 

Содержание отчета и его форма

Отчет по лабораторной работе должен состоять из:

1) названия лабораторной работы;

2) ответов на контрольные вопросы;

3) формулировки заданий к лабораторной работе и порядка их выполнения.

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

3. Вопросы для самостоятельной работы

Базовый уровень

1. Способы создания запросов в Visual FoxPro.

2. Охарактеризуйте создание запросов с помощью мастера.

3. Охарактеризуйте создание запросов в конструкторе проектов.

4. Каким образом при создании запроса можно определить поля результирующей таблицы?

5. Каким образом можно просмотреть результат выборки (запроса)?

7. Как можно просмотреть автоматически сгенерированный запрос в виде SQL?

Повышенный уровень

8. Охарактеризуйте создание запросов в командном окне Visual FoxPro.


Лабораторная работа 7

Расширенные SQL-запросы. Модификация данных в таблицах

 

Цель и содержание: изучить средства языка SQL для условной и безусловной модификации данных в таблицах баз данных (БД).

Теоретическая часть

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

1) добавлять информацию в таблицу;

2) модифицировать данные в таблице;

3) удалять информацию из таблицы.

Модификация данных в таблицах

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

UPDATE таблица

SET поле=выражение [,поле=выражение] …

[WHERE условие]

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

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

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

UPDATE tab12

SET NAME =“Macintosh”,

UNITPRICE = UNITPRICE+10000

WHERE NAME =“Pentium4”

будет изменено название товара «Pentium4» на «Macintosh» и увеличена стоимость на 10000.

Модификация множества записей. При изменении значений во множестве записей таблицы условие, определяемой при помощи оператора WHERE, должно удовлетворятьвсему множеству. Используя SQL -запрос

UPDATE tab14

SET CREDITLIMIT= CREDITLIMIT*2

WHERE CITY=“Ставрополь”

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

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

UPDATE tab14

SET UNITPRICE = 0.8*UNITPRICE

WHERE “Мичуринск” = (SELECT CITY FROM tab15

WHERE tab15.CUSTOMERNO= tab14.CUSTOMERNO)

можно вывести на экран список всех покупателей, проживающих в Мичуринске, уменьшив стоимость, приобретенного ими товара на 20%.

Целостность

Целостность - самое важное требование, предъявляемое к базам данных. Для связи таблиц в реляционных базах данных используются совпадающие поля. Например, в таблицах CUSTOMER и ORDSALE связь осуществляется по полю CUSTOMERNO. Наименования совпадающих полей могут и не совпадать, но они должны иметь одинаковый тип. Нарушение целостности возникает в том случае, когда таблица ORDSALE содержит номера покупателей, которых нет в таблице CUSTOMER. Для проверки целостности данных при добавлении в таблицу ORDSALE информации об отпуске товаров можно проверить, имеется ли указанный покупатель в таблице CUSTOMER. Более правильным является использование первичных и внешних ключей таблиц, которые автоматически отслеживают целостность данных.

Для создания первичных и внешних ключей можно использовать команду CREATE TABLE а также команду ALTER TABLE. Приведем синтаксис команды ALTER TABLE:

ALTER TABLE имя таблицы

ADD PRIMARY KEY(имя поля, имя поля...)

ADD FOREIGN KEY имя внешнего ключа

(имя поля, имя поля...)

REFERENCES имя ссылочной таблицы

[ON DELETE

RESTRICT çCASCADE çSET NULL]

Для обеспечения целостности покупателей в базе данных создадим первичный ключ для таблицы CUSTOMER и внешние ключи для всех таблиц, которые содержат код покупателя:

ALTER TABLE CUSTOMER

ADD PRIMARY KEY(CUSTOMERNO)

ALTER TABLE ORDSALE

ADD FOREIGN KEY CUSTNO (CUSTOMERNO)

REFERENCES CUSTOMER

ON DELETE RESTRICT

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

Удаление данных

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

DELETE FROM таблица [WHERE условие]

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

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

ПримерSQL -запрос, иллюстрирующий удаление одной записи из базы данных

DELETE FROM tab12

WHERE CUSTOMERNO=23

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

Пример – SQL -запрос, иллюстрирующий удаление из базы множества записей

DELETE FROM tab12 WHERE STOCK=34

После выполнения данного SQL -запроса из таблицы tab12 будутудаленывсе записи, в которых поле STOCK равно 34.

ПримерSQL -запрос, иллюстрирующий удаление всех записей из таблицы ORDSALE:

DELETE FROM ORDSALE

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

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

Пример – Удаление с подзапросом

DELETE FROM tab12

WHERE “Киев”= (SELECT CITY FROM tab13

WHERE tab13.CUSTOMERNO= tab12.CUSTOMERNO)

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

Добавление записей

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

INSERT INTO таблица [(поле [,поле]...)] VALUES (константа [,константа]...)

или

INSERT INTO таблица [(поле [,поле]...)] подзапрос

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

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

Пример– SQL- запрос для вставки одной записи в базу данных

INSERT INTO tab15

(kod, NAME, UNITPRICE, CATEGORY)

VALUES

(1001,”Pentium”,3000000,2)

В результате выполнения приведенного выше запроса будет создана новая запись для товара с заданным номером, наименованием, стоимостью и категорией товара. В частности, в таблицу tab15 будет добавлен товар «Pentium»,с кодом равным 1001, стоимостью 30000000 и категорией, равной 2.

Пример – SQL- запрос для вставки одной записи в базу данных


Поделиться с друзьями:

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.034 с.