- •Язык запросов sql
- •Общие сведения
- •Insert - запрос на добавление;
- •Инструкция select
- •Синтаксис select
- •Расширения инструкции select в access
- •Порядок выполнения выборки
- •Управление списком выбора
- •Указание источника данных
- •Применение реляционных операторов
- •Применение булевых операторов
- •Обработка неопределенных значений
- •Сортировка данных
- •Вычисление агрегатных функций
- •Группировка данных
- •Ограничение для групп данных
- •Выборка из нескольких таблиц
- •Соединение отношений
- •Выборка из нескольких таблиц
- •Соединение отношений
- •Запрос с соединением, использующий from и where
- •Запрос с соединением join
- •Запрос с соединением, использующий from и where
- •Запрос с соединением join
- •Операции с таблицами
- •Изменение структуры таблицы
- •Удаление таблицы
- •Действия со строками
- •Вставка строк в таблицу
- •Изменение данных в таблице
- •Удаление данных из таблицы
- •Инструкция transform
- •In ("Физика", "Математика");
- •Глава 5 Работа с формами
Удаление таблицы
Последней рассматриваемой операцией, при помощи которой выполняется управление таблицами в целом, является команда их удаления.
Команда удаления таблицы имеет следующий синтаксис:
DROP TABLE table_name;
Например, для удаления таблицы tbIGroups следовало бы выполнить такую команду:
DROP TABLE tbIGroups;
При удалении таблиц существуют определенные ограничения. Операцию удаления нельзя выполнить, если на таблицу с помощью ограничений целостности FOREIGN KEY ссылается одна или более таблиц. Для выполнения операции удаления такие ограничения целостности необходимо предварительно удалить.
Действия со строками
Ранее в данной главе была подробно рассмотрена инструкция SELECT, создающая запрос на выборку. Чтобы создать другие типы запросов (на добавление, изменение или удаление), необходимо воспользоваться соответствующими командами SQL, которые называются операторами модификации данных:
-
INSERT - добавляет новые строки в таблицы БД;
-
UPDATE - изменяет в таблице существующие строки;
-
DELETE - удаляет строки из таблицы.
Как правило, при помощи каждого из перечисленных операторов за один раз можно изменить данные только в одной таблице БД.
Рассмотрим подробнее каждую из перечисленных команд.
Вставка строк в таблицу
Вставка новых строк в таблицу выполняется при помощи оператора INSERT. При этом осуществляется добавление только одной отдельной строки.
Ниже представлен синтаксис написания команды INSERT:
INSERT INTO table_name [(columnl_name [,...n])]
VALUES (valuel [,...n]);
где: columnl_name [,...n] - имена столбцов, в которые будут введены данные;
VALUES - ключевое слово, определяющее значение некоторых или всех данных в строке;
valuel [,...п] - вводимые в строку данные, принадлежащие соответствующим столбцам таблицы.
Примечание. При построении команды INSERT необходимо учитывать, что значения valuel [,...п] нужно указывать в том же порядке, в котором определялись соответствующие столбцы columnl_name
[,...п].
Можно выполнять добавление данных не во все поля записи. Для этого необходимо, чтобы для столбцов, значения которых допускают отсутствие информации, было определено значение по умолчанию или же чтобы они допускали ввод неопределенных значений.
Если пользователь не уверен в том, как определено значение столбца по умолчанию, он может явно указать в команде значение NULL.
Примечание. При явном указании столбцов, в которые добавляются данные, не обязательно соблюдать порядок их следования в таблице. Важно соответствие порядка столбцов порядку добавляемых данных.
Для вставки данных, которые выбираются из одной либо нескольких таблиц БД, в команде INSERT можно использовать оператор SELECT. В этом случае синтаксис будет следующим:
INSERT INTO tablel_name [(columnl_name [,...n])]
SELECT columnl_name [,...nj FROM table2_name;
Напомним, что похожая операция есть и в инструкции SELECT - для создания новой таблицы и вставки в нее выбранных записей используется конструкция SELECT.. INTO.
Изменение данных в таблице
Изменение существующих данных в таблицах выполняется при помощи оператора UPDATE. При этом в нем указывается имя таблицы и столбца, в которых изменяются данные, а также их новые значения и условия изменения. Обобщенный синтаксис команды изменения данных выглядит следующим образом:
UPDATE table_name
SET columnl_name = new_datal
[WHERE condition [,...n]];
где: columr\_name - имя столбца, в котором производится изменение данных;
new_data - новые данные в виде константы либо выражения; condition - условие, при соблюдении которого происходит изменение данных в таблице.
Например, увеличим в таблице tbIGroups для всех групп значение курса на 1 (по сути, переведем группы на следующий курс):
UPDATE tbIGroups SET fCourse = fCourse + 1
Эту операцию можно выполнить для всех курсов, кроме последнего (пятого):
UPDATE tbIGroups SET fCourse = fCourse + 1 WHERE fCourse < 5
Изменяемых столбцов, как и условий, в команде UPDATE может быть указано несколько.
Примечание. Если предложение WHERE не используется, то при выполнении команды данные будут изменены во всех строках столбцов, указанных в предложении SET.