Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры_БД.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.03 Mб
Скачать
    1. Средства модификации данных языка sql

Модификация данных подразумевает три возможных операции: вставка, изменение и удаление. Посмотрим, как выполняются эти операции средствами языка SQL.

Вставка данных – insert

Для вставки данных в таблицы служит SQL-оператор INSERT. Этот оператор имеет две формы, в зависимости от того, всем ли столбцам таблицы присваиваются значения. Если указываются значения всех столбцов, то оператор имеет следующий вид:

Листинг 7

INSERT INTO ПРОЕКТ VALUES

(1600, 'КВ4 Подготовка налогового отчет', 'Бухгалтерия', 100)

Обратите внимание, что значения типа Integer и Numeric не заключаются в кавычки, в отличие от Char и VarChar.

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

Листинг 8

INSERT INTO ПРОЕКТ (Название, ИдПроекта) VALUES

('KB4 Подготовка налогового отчета', 1700);

Вспомните, однако, что при создании таблицы ПРОЕКТ в операторе CREATE TABLE Для столбца МаксТрудозатраты было задано начальное значение 100, поэтому несмотря на то, что в операторе INSERT значение этому столбцу не присваивалось, СУБД все равно установит его равным 100. Столбец Отдел будет иметь пустое значение.

Есть несколько дополнительных замечаний, которые следует сделать по поводу второй формы оператора INSERT.

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

Во-вторых, чтобы вставка была выполнена, необходимо задать значения всех столбцов, определенных как NOT NULL.

В-третьих, в обеих формах INSERT, если первичный ключ является суррогатным ключом, его значение указывать не нужно: это за вас сделает СУБД. Следовательно, если ИдПроекта является суррогатным ключом, то вставку строки можно произвести следующим образом:

Листинг 9

INSERT INTO ПРОЕКТ VALUES ('KB4 Подготовка налогового отчета', 'Бухгалтерия', 100);

Если требуется скопировать большое количество данных из другой таблицы, их значения можно получить с помощью оператора SELECT. Например, следующий оператор копирует значения столбцов Имя и ТабельныйНомер из таблицы СОТРУДНИК в таблицу под названием СОТРУДНИК1:

Листинг 10

INSERT INTO СОТРУДНИК1 (Имя, ТабельныйНомер)

SELECT Имя, ТабельныйНомер FROM СОТРУДНИК;

Обратите внимание, что в этом случае ключевое слово VALUES не входит в оператор SELECT.

Изменение данных – update

Значения существующих данных могут быть изменены с помощью SQL-оператора UPDATE. Имейте в виду, что это мощная команда, и ее следует использовать с осторожностью. Рассмотрим следующий пример:

Листинг 11

UPDATE СОТРУДНИК

SET Телефон = '287-1435'

WHERE Имя = 'Джеймс Нестор';

Этот оператор устанавливает значение столбца Телефон в строке сотрудника по имени Джеймс Нестор равным '287-1435'.

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

Листинг 12

UPDATE СОТРУДНИК

SET Телефон = '287-1435', Отдел = 'Производство'

WHERE ТабельныйНомер = 200;

Эта команда изменяет значения столбцов Телефон и Отдел для указанного сотрудника.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]