Примеры использования операторов манипулирования данными

Тесты

Примеры

UPDATE

UPDATE изменяет одну или более существующих строк в таблице или виде. UPDATE – одна из привилегий базы данных контролируемых GRANT и REVOKE.

Факультативное предложение WHERE может быть использовано, чтобы ограничить UPDATE к некоторому подмножеству строк таблицы. Модификации не могут модифицировать секторы массива.

Предупреждение: Если предложение WHERE упущено, UPDATE изменяет все строки в таблице.

Обратите внимание: Когда модифицируются BLOB столбцы, UPDATE заменяет весь BLOB целиком новым значением.

Синтаксис

UPDATE {table | view} SET col = <val> [, col = <val>...] [WHERE <search_condition>;

<val> = {col [<array_dim>] | <constant> | <expr> | <function> | NULL | USER }

<array_dim> = [ x:y [, x:y...] ]

Обратите внимание: Внешние скобки (выделено жирным) должны присутствовать в ссылке на массив.

<constant> = num | "string" | charsetname "string"

<expr> = Допустимое выражение SQL, которое возвращает одиночное значение.

<function> = {CAST (<val> AS <datatype>) | UPPER (<val>) | GEN_ID (generator, <val>) }

<search_condition> = Смотри CREATE TABLE, для полного описания.

Аргумент Описание
table | view Имя существующей таблицы или вида для модификации.
SET col = <val> Определяет столбцы для изменения и значения, которые требуется присвоить этим столбцам.
WHERE <search_cond> Модифицировать только найденное. Определяет условия, которым строка должна удовлетворять, чтобы изменится.

Следующая инструкция изменяет столбцы для всех строк таблицы:

UPDATE CITIES SET POPULATION = POPULATION * 1.03;

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

UPDATE COUNTRY SET CURRENCY = "USDollar" WHERE COUNTRY = "USA";

Используйте таблицу EMPLOYEE_TBL.

Что случится, если выполнить следующие операторы?

  • insert into employee_tbl '('JACKSON', 'STEVE', '313546078', '3178523443');
  • insert into employee_tbl values ('JACKSON’, 'STEVE', '313546078', '3178523443');
  • insert into employee_tbl values ('MILLER', 'DANIEL', '230980012', NULL);
  • insert into employee_tbl values ('TAYLOR', NULL, '445761212', '3179221331');
  • delete from employee_tbl;
  • delete from employee_tbl where last_name = 'SMITH';
  • delete from employee_tbl where last_name = 'SMITH' and first_name = 'JOHN';
  • update employee_tbl set last_name = 'CONRAD';
  • update employee_tbl set last_name = 'CONRAD' where last_name = 'SMITH';
  • update employee_tbl set last_name = 'CONRAD', first_name = 'LARRY';
  • update employee_tbl set last_name = 'CONRAD' first_name = 'LARRY' where ssn = '313546078';

Упражнения

  • Используя операторы DML, выполните следующее.
  • Измените SSN для служащего по имени Billy Pierce на 310239857.
  • Добавьте информацию о служащем по имени Ben Moore, тел. 317-5649880, SSN равен 313456789.
  • Служащий по имени John Smith уволился, удалите соответствующую запись.

INSERT – вставка строк в таблицу

Пример 1. Вставка одной строки в таблицу:

INSERT INTO P (PNUM, PNAME) VALUES (4, "Иванов");

Пример 2. Вставка в таблицу нескольких строк, выбранных из другой таблицы (в таблицу TMP_TABLE вставляются данные о поставщиках из таблицы P, имеющие номера, большие 2):

INSERT INTO TMP_TABLE (PNUM, PNAME) SELECT PNUM, PNAME FROM P WHERE P.PNUM>2;

UPDATE – обновление строк в таблице

Пример 3. Обновление нескольких строк в таблице:

UPDATE P SET PNAME = "Пушников" WHERE P.PNUM = 1;

DELETE – удаление строк в таблице

Пример 4. Удаление нескольких строк в таблице:

DELETE FROM P WHERE P.PNUM = 1;

Пример 5. Удаление всех строк в таблице:

DELETE FROM P;



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: