русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

WHERE EXISTS


Дата добавления: 2015-07-09; просмотров: 450; Нарушение авторских прав


(SELECT *

FROMUSP

WHEREOCENKA = 3

AND STUDENTS.SNUM = USP.SNUM);

 

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

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

 

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

Синтаксис команды UPDATE:

 

UPDATE <имя таблицы>

SET<имя поля> = <значение>;

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

 

Пример 1. Изменить оценки на пять по предмету с кодом 2003.

 

UPDATEUSP

SETOCENKA = 5

WHEREPNUM = 2003;

 

Предложения SET можно назначить для любого числа столбцов.

 

Пример 2. Заменить преподавателя Викулина на Федченко.

 

UPDATETEACHERS

SET TFAM = “Федченко”, TNAME = “Светлана”, TOTCH = “Геннадиевна”, TDATE = 01/09/1999

WHERETNUM = 4001;

 

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

 

Пример 3. Увеличить стипендию в 2 раза.

 

UPDATESTUDENTS

SETSTIP = STIP*2;

 

Можно использовать сложные предикаты выбора записи.

 

Пример 4. Удвоить только стипендию размером 25.50.

 

UPDATESTUDENTS

SETSTIP = STIP*2

WHERESTIP = 25.50;

 

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

 

Пример 5. Изменить все оценки студентов по учебному процессу с кодом 2003 на NULL.



UPDATE USP

SET OCENKA = NULL

WHERE PNUM = 2003;

 

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

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

 

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

 

 

UPDATESTUDENTS

SETSTIP = STIP*2

WHERE 2<=

(SELECT COUNT(SNUM)

FROMUSP

WHERE STUDENTS.SNUM = USP SNUM);

 

 

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

 

UPDATESTUDENTS

SETSTIP = STIP-1

WHERE SNUM IN

(SELECT SNUM

FROMUSP FIRST

WHERE OCENKA =

(SELECTMIN (OCENKA)

FROMUSP SECOND

WHERE SNUM.UDATE = SECOND.UDATE));

 

Пример 8. Уменьшить оценку студентов на единицу, у которых оценки ниже средней.

 

Для этого сначала выполним поиск средней оценки.

 

SELECTAVG (OCENKA)

FROMUSP;

 

Теперь используем запрос:

 

UPDATEUSP

SET OCENKA = OCENKA – 1

WHEREocenka <4.2;

 

 



<== предыдущая лекция | следующая лекция ==>
Внесение изменений в базу данных. | Способы задания баз данных


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.007 сек.