- •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: язык исчисления с переменными – доменами
- •Формы запросов
- •Зарезервированные слова:
- •Конструирование операторов запроса.
- •Выбор записей
- •Запросы к нескольким таблицам
- •Вычисления
- •Операции
- •Группы записей
- •Работа с наборами записей
- •Развитые операторы запросов.
Запросы на изменение. Инструкция select...Into
Создает запрос на создание таблицы.
Синтаксис
SELECT поле1[,поле2[, ...]] INTO новая_таблица[IN внешняя_база_данных]
From источник
где:
поле1, поле2 - имена полей, которые следует скопировать в новую таблицу;
новая_таблица - имя создаваемой таблицы. Это имя должно удовлетворять стандартным правилам именования. Если новая_таблица совпадает с именем существующей таблицы, возникает устранимая ошибка;
внешняя_база_данных - путь к внешней базе данных;
источник - имя существующей таблицы, из которой отбираются записи. Это может быть одна таблица, несколько таблиц или запрос.
Запрос на создание таблицы можно использовать для архивации записей, создания резервных копий таблицы, копий для экспорта в другую базу данных или основы отчета, отображающего данные за конкретный период времени.
В новой таблице можно определить ключевое поле. При создании таблицы поля в новой таблице наследуют типы данных и размеры базовых полей; никакие другие свойства таблиц и полей не передаются.
Для добавления данных в существующую таблицу используется инструкция INSERT INTO вместо запроса на добавление записей.
Чтобы узнать, какие записи будут отобраны при выполнении запроса на создание таблицы, сначала можно просмотреть результаты инструкции SELECT, использующей те же условия отбора.
Предложение in
Определяет таблицы в любой внешней базе данных, с которой ядро базы данных Microsoft Jet может установить связь, например, базе данных dBASE, Paradox или внешней базе данных с ядром Jet.
Синтаксис
Чтобы определить результирующую таблицу:
[SELECT | INSERT] INTO назначение IN
{путь | ["путь" "тип"] | ["" [тип; DATABASE = путь]]}
Чтобы определить исходную таблицу:
FROM выражение IN
{путь | ["путь" "тип"] | ["" [тип; DATABASE = путь]]}
где:
назначение - имя внешней таблицы, в которую добавляются данные;
выражение - имена одной или нескольких таблиц, откуда отбираются данные. Это выражение может быть именем отдельной таблицы, сохраненным запросом или результатом операции INNER JOIN, LEFT JOIN или RIGHT JOIN;
путь - полный путь к каталогу или файлу, содержащему таблицу;
тип - имя типа базы данных, которая использовалась для создания таблицы, если база данных несовместима со стандартом Jet (например, dBASE III, dBASE IV, Paradox 3.x или Paradox 4.x).
С помощью предложения IN можно одновременно подключиться только к одной внешней базе данных.
В некоторых случаях аргумент путь ссылается на каталог, содержащий файлы базы данных. Например, во время работы с таблицами баз данных dBASE, FoxPro или Paradox аргумент путь ссылается на каталог с файлами .DBF или .DB. Имя файла таблицы извлекается из аргументов назначение или выражение.
Чтобы определить базу данных, несовместимую со стандартом Jet, к ее имени добавляется знак точки с запятой (;) и имя заключается в одиночные (' ') или двойные (" ") кавычки, например, 'dBASE IV;' или "dBASE IV;".
Кроме того, для описания внешней базы данных можно использовать зарезервированное слово DATABASE. Например, следующие строки описывают одну и ту же таблицу:
... FROM [Таблица] IN "" [dBASE IV; DATABASE=C:\DBASE\DATA\SALES;];
... FROM [Таблица] IN "C:\DBASE\DATA\SALES" "dBASE IV;"
