|
В SQL для выполнения ввода данных в таблицу, их изменения и удаления предназначены три команды языка манипулирования данными: INSERT, UPDATE, DELETE.
Команда INSERT осуществляет вставку в таблицу новой строки. В простейшем случае она имеет вид:
INSERT INTO <имя таблицы> VALUES ( <значение 1>,<значение 2>, …, <значение N> );
При такой записи указанные в скобках после ключевого слова VALUES значения вводятся в поля добавленной в таблицу новой строки в том порядке, в котором соответствующие столбцы указаны при создании таблицы.
Например, ввод новой строки в таблицу STUDENT.
INSERT INTO STUDENT
VALUES (101, 'Костюченко', 'Александр', 200, 3, 'Минск', #1/22/1981#, 15); (33.1)
Если в какое-либо поле необходимо вставить NULL -значение, то оно вводится как обычное значение:
INSERT INTO STUDENT
VALUES (202, 'Мазуркин', NULL, 200, 3, 'Минск', #1/22/1981#, 15); (33.2)
В случае, когда необходимо ввести значения полей в порядке, отличном от заданного при создании таблицы, или требуется ввести значения не во все столбцы, следует использовать следующую форму команды INSERT:
INSERT INTO STUDENT (STUDENT_ID, CITY, SURNAME, NAME)
VALUES (2, ‘Бобруйск’, ‘Абрамович’, ‘Саша’); (33.3)
Столбцам, значения которых не указаны в приведенном в скобках списке, автоматически присваивается значение по умолчанию, если оно указано при создании таблицы, либо NULL -значение.
С помощью команды INSERT можно извлечь данные из одной таблицы и поместить их в другой, причем обе таблицы должны существовать и иметь одинаковые схемы отношений.
Пример. Переписать в таблицу STUDENT1 данные о студентах из Москвы.
INSERT INTO STUDENT1
SELECT *
FROM STUDENT
WHERE CITY = ‘Москва’; (33.4)
Удаление строк из таблицы осуществляется командой DELETE.
Пример. Удалить данные из таблицы EXAM_MARKS. В результате таблица становится пустой.
DELETE FROM EXAM_MARKS; (33.5)
Для удаления из таблицы нескольких строк, удовлетворяющих некоторому условию, можно воспользоваться предложением WHERE
DELETE FROM EXAM_MARKS
WHERE STUDENT_ID = 301; (33.6)
Команда UPDATE позволяет изменять, то есть обновлять значения некоторых или всех полей в существующей строке или строках таблицы.
Например, изменить рейтинг всех университетов на значение 200.
UPDATE UNIVERSITY
SET RATTING = 200; (33.7)
Для указания конкретных строк таблицы, значения полей которых должны быть изменены, в команде UPDATE можно использовать предикат, указываемый в предложении WHERE.
Пример. Изменить рейтинг тех университетов, которые расположены в Москве.
UPDATE UNIVERSITY
SET RATTING = 200
WHERE CITY = ‘Москва’; (33.8)
Команда UPDATE позволяет изменять не только один, но и множество столбцов.
Пример. Наименование предмета обучения с идентификатором 43 заменить на название «Высшая математика», количество часов и семестр тоже изменить.
UPDATE SUBJECT
SET SUBJ_NAME = ‘Высшая математика’, HOUR = 36, SEMESTER = 1
WHERE SUBJ_ID= 43; (33.9)
В предложении SET можно использовать выражения, указывающие способ изменения значения поля, в которые могут входить значения изменяемого и других полей.
Пример. Увеличить стипендию студентов из Воронежа в два раза.
UPDATE STUDENT
SET STIPEND = STIPEND*2
WHERE CITY = ‘Воронеж’;(33.10)
Предложение SET не является предикатом, поэтому в нем можно указывать значение NULL следующим образом:
UPDATE UNIVERSITY
SET RATTING = NULL
WHERE CITY = ‘Воронеж’; (33.11)
Дата добавления: 2015-09-12; просмотров: 49 | Поможем написать вашу работу | Нарушение авторских прав |