русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Команды манипулирования данными


Дата добавления: 2015-07-09; просмотров: 1624; Нарушение авторских прав


В SQL для выполнения операций ввода данных в таблицу, их изменения и удаления предназначены три команды языка манипулирования данными (DML). Это команды – INSERT(вставить), UPDATE(обновить), DELETE(удалить).

Команда INSERTосуществляет вставкув таблицу новой строки. В простейшем случае она имеет следующий вид:

INSERT INTO<имя таблицы > VALUES(<значение>, <значение>, … );

При такой записи указанные в скобках после ключевого слова VALUESзначения вводятся в поля добавленной в таблицу новой строки в том порядке, в котором соответствующие столбцы указаны при создании таблицы, то есть в операторе CREATE TABLE.

Например, ввод новой строки в таблицу STUDENT может быть осуществлен следующим образом

INSERT INTOSTUDENT

VALUES(101,‘Иванов’,‘Александр ’, 200, 3,‘Москва ’,‘6/10/1979’, 15);

Чтобы такая команда могла быть выполнена, таблица с указанным в ней именем (STUDENT) должна быть предварительно определена (создана) командой CREATE TABLE. Если в какое-либо поле необходимо вставить NULL-значение, то оно вводится как обычное значение:

INSERT INTOSTUDENT

VALUES(101,‘Иванов’, NULL, 200, 3,‘Москва ’,‘6/10/1979’, 15);

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

INSERT INTOSTUDENT (STUDENT_ID, CITY, SURNAME, NAME)

VALUES(101, ‘Москва ’, ‘Иванов’, ‘Саша ’);

Столбцам, наименования которых не указаны в приведенном в скобках списке, автоматически присваивается значение по умолчанию, если оно назначено при описании таблицы (команда CREATE TABLE), либо значение NULL.

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



INSERT INTOSTUDENT1

SELECT*

FROMSTUDENT

WHERECITY = ‘Москва ’;

При этом таблица STUDENT1 должна быть предварительно создана командой CREATE TABLEи иметь структуру, идентичную таблице STUDENT.

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

Следующее выражение удаляет все строки таблицы EXAM_MARKS1.

DELETE FROMEXAM_MARKS1;

В результате таблица становится пустой (после этого она может быть удалена командой DROP TABLE).

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

DELETE FROMEXAM_MARKS1

WHERESTUDENT_ID = 103;

Можно удалить групп у строк

DELETE FROMSTUDENT1

WHERECITY = ‘Москва’;

 

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

Например, чтобы для всех университетов, сведения о которых находятся в таблице UNIVERSITY1, изменить рейтинг назначение 200, можно использовать конструкцию:

UPDATEUNIVERSITY1

SETRATING = 200;

Для указания конкретных строк таблицы, значения полей которых должны быть изменены, в команде UPDATEможно использовать предикат, указываемый в предложении WHERE.

UPDATEUNIVERSITY1

SETRATING = 200

WHERECITY = ‘Москва ’;

В результате выполнения этого запроса будет изменен рейтинг только у университетов, расположенных в Москве.

Команда UPDATEпозволяет изменять не только один, но и множество столбцов. Для указания конкретных столбцов, значения которых должны быть модифицированы, используется предложение SET.

Например, наименование предмета обучения ‘Математика’ (для него SUBJ_ID = 43) должно быть заменено, на название ‘Высшая математика’, при этом идентификационный номер необходимо сохранить, но в соответствующие поля строки таблицы ввести новые данные об этом предмете обучения. Запрос будет выглядеть следующим образом.

UPDATESUBJECT1

SETSUBJ_NAME = ‘Высшая математика’, HOUR = 36, SEMESTER = 1

WHERESUBJ_ID = 43;

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

UPDATEUNIVERSITY1

SETRATING = RATING*2;

Например, для увеличения в таблице STUDENT1 значения поля STIPEND в два раза для студентов из Москвы можно использовать запрос

UPDATESTUDENT1

SETSTIPEND = STIPEND*2

WHERECITY = ‘Москва ’;

Предложение SETне является предикатом, поэтому в нем можно указать значение NULLследующим образом.

UPDATEUNIVERSITY1

SETRATING = NULL

WHERECITY = ‘Москва ’;



<== предыдущая лекция | следующая лекция ==>
Задание 12. | Задание 13.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 3.05 сек.