- •4. Реляционные языки запросов
- •Isbl -язык реляционной алгебры
- •Язык sql
- •Типы данных.
- •Создание, удаление или изменение таблиц или индексов с помощью управляющих запросов sql.
- •Инструкция create table
- •Предложение constraint (sql)
- •Инструкция alter table
- •Инструкция drop
- •Drop {table таблица | index индекс on таблица}
- •Инструкция create index
- •Запросы на выборку. Инструкция select
- •Предикаты all, distinct, distinctrow, top (sql)
- •Select [all | distinct | distinctrow | [top n [percent]]]
- •Предложение from
- •Синтаксис
- •Предложение where
- •Синтаксис
- •Предложение order by
- •Синтаксис
- •Группировка записей. Предложение group by
- •Синтаксис
- •Where условие_отбора
- •Предложение having
- •Синтаксис
- •From таблица
- •Запросы с соединением таблиц. Операция inner join
- •On таблица1.Поле2 оператор_сравнения таблица2.Поле2) or
- •Операции left join, right join
- •From таблица1 [ left | right ] join таблица2
- •Объединение результатов нескольких запросов. Операция union
- •Подчиненный запрос.
- •Запросы на изменение. Инструкция select...Into
- •From источник
- •Предложение in
- •Синтаксис
- •Инструкция insert into
- •Инструкция update
- •Инструкция delete
- •Delete [таблица.*]
- •Перекрестные запросы
- •Синтаксис
- •Запросы с параметрами Описание parameters
- •Синтаксис parameters имя тип_данных [, имя тип_данных [, ...]]
- •Статистические функции sql .
- •Функция Avg
- •Функция Count
- •Функции Min, Max
- •Функции StDev, StDevP
- •Функция Sum
- •Функции Var, VarP
- •Var(выражение)
- •VarP(выражение)
- •Quel:язык реляционного исчисления с переменными-кортежами
- •Query-by-example: язык исчисления с переменными – доменами
- •Формы запросов
- •Зарезервированные слова:
- •Конструирование операторов запроса.
- •Выбор записей
- •Запросы к нескольким таблицам
- •Вычисления
- •Операции
- •Группы записей
- •Работа с наборами записей
- •Развитые операторы запросов.
Инструкция insert into
Добавляет запись или записи в таблицу. Эта инструкция образует запрос на добавление.
Синтаксис
Запрос на добавление нескольких записей:
INSERT INTO назначение [IN внешняя_база_данных] [(поле1[,поле2[, ...]])]
SELECT [источник.]поле1[,поле2[, ...]
FROM выражение
Запрос на добавление одной записи:
INSERT INTO назначение [(поле1[,поле2[, ...]])]
VALUES (значение1[, значение2[, ...])
где:
назначение - имя таблицы или запроса, в которые добавляются записи.
значение1, значение2 - значения, добавляемые в указанные поля новой записи. Каждое значение будет вставлено в поле, занимающее то же положение в списке: значение1 будет вставлено в поле1, значение2 - в поле2 и т.п. Каждое значение заключается в кавычки (" "); для разделения значений используются запятые.
Инструкцию INSERT INTO можно использовать для добавления одной записи в таблицу. В этом случае инструкция содержит имя и значение каждого поля записи. Нужно определить все поля записи, в которые будет помещено значение, и значения для этих полей. Если поля не определить, в недостающие столбцы будет вставлено стандартное значение Null. Записи добавляются в конец таблицы.
Инструкцию INSERT INTO можно также использовать для добавления набора записей из другой таблицы или запроса с помощью предложения SELECT ... FROM. В этом случае, предложение SELECT определяет поля, добавляемые в указанную таблицу назначения.
Таблица-источник или таблица-назначение определяют таблицу или запрос. Если указан запрос, ядро базы данных Microsoft Jet добавляет все таблицы, указанные в запросе.
Инструкция INSERT INTO не является обязательной, однако, если она присутствует, то должна находиться перед инструкцией SELECT.
Если результирующая таблица содержит ключевое поле, следует убедиться, что в ключевое поле (или поля) добавляются уникальные непустые значения, в противном случае, ядро базы данных Jet не будет добавлять записи.
Чтобы добавить поля в таблицу с полем-счетчиком и заново перенумеровать добавленные записи, в запрос не включается поле-счетчик. Поле-счетчик включается в запрос, чтобы сохранить исходные значения поля.
Таблицы, которые содержат добавляемые записи, не изменяются.
Инструкция update
Создает запрос на обновление записей, который изменяет значения полей указанной таблицы на основе заданного условия отбора.
Синтаксис
UPDATE таблица
SET новое_значение
WHERE условие_отбора;
где новое_значение - выражение, определяющее значение, которое должно быть вставлено в указанное поле обновленных записей;
условие_отбора - выражение, отбирающее записи, которые должны быть изменены. При выполнении этой инструкции будут изменены только записи, удовлетворяющие этому условию.
Инструкцию UPDATE особенно удобно использовать для изменения сразу многих записей или, если записи, подлежащие изменению, находятся в разных таблицах. Одновременно можно изменить значения нескольких полей.
Инструкция UPDATE не возвращает никакие записи. Чтобы узнать, какие записи будут изменены, сначала можно просмотреть результаты запроса на выборку, использующего то же самое условие отбора, а затем выполнить запрос на обновление записей.