Популярные услуги

Все письменные КМ под ключ за 3 суток! (КМ-6 + КМ-7 + КМ-8 + КМ-9 + КМ-10)
КМ-6. Динамические массивы. Семинар - выполню любой вариант!
Любая задача на C/C++
Одно любое задание в mYsql
Любой тест по базам данных максимально быстро на хорошую оценку - или верну деньги!
Любой реферат по объектно-ориентированному программированию (ООП)
Повышение уникальности твоей работе
КМ-2. Разработка простейших консольных программ с использованием ООП + КМ-4. Более сложные элементы ООП - под ключ!
Оба семинара по программированию под ключ! КМ-2. Разработка циклических алгоритмов + КМ-3. Функции и многофайловые программы в Си
Любой реферат по информатике

Операторы манипулирования данными

2021-03-09СтудИзба

Лекция 23. Операторы манипулирования данными

Для манипулирования данными, хранящимися в БД, используется группа операторов SQL - DML (Data Manipulation Language). С помощью операторов DML пользователь может загружать в таблицы новые данные, модифицировать и удалять существующие данные. В языке SQL определены три основных оператора DML:

§ INSERT – вставка;

§ UPDATE - обновление;

§ DELETE - удаление.

Оператор INSERT

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

INSERT INTO имя_таблицы

Рекомендуемые материалы

VALUES (значение_1, значение_2, … значение_М)

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

Пусть требуется добавить значения в таблицу «Экземпляры», в этом случае запрос на добавление будет выглядеть следующим образом:

INSERT INTO Экземпляры

VALUES (231, ‘5-272-00278-4’, 0, true, NULL, NULL)

При добавлении данных в таблицу можно заполнять не все поля, а лишь необходимые. В этом случае используется следующая синтаксическая форма оператора INSERT:

INSERT INTO имя_таблицы (имя_поля_1,  имя_поля_2… имя_поля_М)

VALUES (значение_1,  значение_2… Значениe_N)

Пусть требуется добавить значения в таблицу «Экземпляры», в этом случае запрос на добавление будет выглядеть следующим образом (в таблице «Экземпляры» пустые значения могли бы выставляться по умолчанию):

INSERT INTO Экземпляры (Инв_номер, ISBN, Наличие )

VALUES (231, ‘5-272-00278-4’,  true)

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

Оператор UPDATE

Для изменения данных, уже занесенных в таблицу, используется оператор UPDATE. Данный оператор не добавляет новых записей в таблицу, а заменяет существующие данные новыми. Оператор UPDATE может быть применен как к одному полю таблицы (наиболее часто используемый случай), так и к нескольким полям. Количество изменяемых записей зависит от потребностей пользователя - с помощью UPDATE можно изменить как одну, так и несколько записей (вплоть до изменения значения всех записей, содержащихся в таблице).

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

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

SET имя_поля = значение

[WHERE условие]

После ключевого слова UPDATE указывается имя таблицы, в которой модифицируются данные, после ключевого слова SET выполняется присвоение полю с заданным именем нового значения. Условие, задаваемое с помощью необязательного предложения WHERE, определяет количество записей, которые будут модифицированы. Пусть требуется изменить домашний телефон читателя с читательским билетом № 325, в этом случае мы получим следующий запрос:

UPDATE Читатели

SET Тел_дом = '6-15-48'

WHERE Номер_ЧБ = 325

Данный оператор изменит значение номера телефона только для записи, соответствующей читателю, зарегистрированному в базе данных под номером 325. Если бы мы не задали ограничительного условия в приведенном выше операторе, то значение номера телефона было бы изменено для всех записей в таблице!

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

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

SET имя_поля_1 = значение_1.

имя_поля_2 = значение_2.

иня_поля_М = значение_Н [WHERE условие]

Использование оператора в данной форме ничем не отличается от рассмотренного ранее. Здесь точно так же нужно быть очень осторожным при формировании условия.

Удаление данных из таблицы

Удаление данных из таблицы выполняется с помощью оператора DELETE. Данный оператор полностью удаляет всю запись, а не данные из отдельных полей. Синтаксис оператора DELETE имеет следующий вид:

DELETE FROM имя_таблицы [WHERE условие]

Удаляемые записи определяются в соответствии с условием, заданным с помощью необязательного предложения WHERE. При отсутствии предложения WHERE в операторе DELETE данные будут удалены из всей таблицы.

Пусть требуется просто удалить запись читателя с читательским билетом № 325 из БД, в этом случае запрос будет выглядеть следующим образом:

DELETE FROM Читатели

WHERE Номер_ЧБ = 325

Контрольные вопросы

1. Что представляют собой операторы манипулирования данными?

2. Что общего между модифицирующими запросами MS Access и SQL?

3. Как указываются условия в модифицирующих запросах?

4. Какой синтаксис имеет оператор INSERT?

Ещё посмотрите лекцию "Интерпретирующие языки" по этой теме.

5. Какой синтаксис имеет оператор UPDATE?

6. Какой синтаксис имеет оператор DELETE?

Задания для самостоятельной работы

Задание 1. Выполните заполнение таблиц с использованием оператора INSERT.

Задание 2. Создайте запрос на обновление информации в таблицах «Читатели», «Экземпляры», «Книги»

Задание 3. Создайте запрос на списание книг, не пользующихся спросом. Можно списать только те книги, ни один экземпляр которых не  находятся на руках у читателей (запрос на удаление).

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее