Хелпикс

Главная

Контакты

Случайная статья





Изменение данных — команда UPDATE



Изменение данных — команда UPDATE

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

 

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

SET {<имя_колонки> = {<выражение> | DEFAULT | NULL}}[,...,n]

{[ FROM {<имя_исходной таблицы>} [,...,n]]

[ WHERE <условие_отбора>]}

 

Рассмотрим назначение каждого из аргументов.

<имя_таблицы> — имя таблицы, в которой необходимо произ­вести изменение данных.

SET — с этого ключевого слова начинается блок, в котором оп­ределяется список изменяемых столбцов. За один вызов UPDATE можно изменить данные в нескольких столбцах множества строк одной таблицы.

<имя_столбца> = {<выражение>|DEFAULT|NULL} — для каждого изменяемого столбца нужно задать значение, которое он примет после выполнения изменения. С помощью ключевого сло­ва DEFAULT можно присвоить столбцу значение, определенное для него по умолчанию. Можно также установить для столбца зна­чение NULL. Изменению подвергнутся все строки, удовлетворяю­щие критериям ограничения области действия запроса UPDATE, которые задаются с помощью раздела WHERE. При составлении выражения можно ссылаться на любые столбцы таблицы, включая изменяемые. При этом следует учитывать, что изменения в данные вносятся только после выполнения команды. Таким образом, при ссылке на изменяемые столбцы будут использоваться старые зна­чения.

FROM {<имя_исходной_таблицы>} — если при изменении дан­ных в таблице необходимо учесть состояние данных в других табли­цах, то эти источники данных необходимо указать в разделе FROM. Собственно источник данных описывается с помощью конструкции <имя_исходной_таблицы>.

WHERE <условие_отбора> — назначение раздела WHERE, ис­пользуемого в запросе UPDATE, полностью соответствует назначе­нию, которое раздел имеет в запросе SELECT, т. е. с помощью раздела WHERE можно сузить диапазон строк, в которых будет выполняться изменение данных. Необходимо указать логическое условие, на осно­ве которого будет приниматься решение об изменении данных конкретной строки. Если в контексте значений строки указанное логиче­ское условие выполняется (т. е. возвращает значение TRUE), то дан­ные этой строки будут изменены. В противном случае изменение не выполняется. Предполагается, что логическое условие включает име­на столбцов изменяемой таблицы, однако это необязательно.

Приведем простейший пример изменения данных. Добавим в таблицу «Учебный_план» по два часа в столбец Количество часов для дисциплин 1-го семестра с формой отчетности «экзамен».

Выведем сначала исходное состояние данных:

 

SELECT *

FROM Учебный_план

WHERE (Отчетность = ‘э’) AND (Семестр = 1)

 

Затем выполним изменения.

 

UPDATE    Учебный_план

         SET Количество часов = Количество часов + 2

         WHERE (Отчетность = 'э') AND (Семестр = 1)

SELECT *

FROM Учебный_план

WHERE (Отчетность = 'э') AND (Семестр = 1)

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.