Как создавать запросы вставки результатов (визуальные инструменты для баз данных)
Запрос вставки результатов позволяет копировать строки внутри таблицы или из одной таблицы в другую. Например, с помощью запроса вставки результатов можно скопировать сведения о названиях книг некоторого издателя из таблицы titles
в другую таблицу, которая будет ему доступна. Запрос вставки результатов похож на запрос создания таблицы, но копирует строки в уже существующую таблицу.
Совет: |
---|
Строки можно скопировать из одной таблицы в другую методом вырезания и вставки. Создайте запрос для каждой таблицы и запустите их. Скопируйте нужные строки из одной сетки результатов в другую. |
При создании запроса вставки результатов необходимо указать следующее.
- Таблицу базы данных, куда нужно скопировать строки (целевую таблицу).
- Таблицу или таблицы, из которых копируются строки (исходную таблицу). Исходная таблица или таблицы становятся частью вложенного запроса. При копировании данных внутри таблицы целевая таблица совпадает с исходной.
- Столбцы в исходной таблице, содержимое которых нужно скопировать.
- Столбцы в целевой таблице, в которые нужно скопировать данные.
- Условия поиска для выборки строк, которые нужно скопировать.
- Порядок сортировки, когда нужно скопировать строки в определенном порядке.
- Параметры группировки для случаев, когда нужно скопировать только сводные данные.
Например, следующий запрос копирует сведения о названиях книг из таблицы titles
в архивную таблицу archivetitles
. Запрос копирует содержимое четырех столбцов для всех названий, принадлежащих указанному издателю:
INSERT INTO archivetitles
(title_id, title, type, pub_id)
SELECT title_id, title, type, pub_id
FROM titles
WHERE (pub_id = '0766')
Примечание. |
---|
Чтобы вставить значения в новую строку, используйте запрос вставки значений. |
Можно скопировать содержимое всех или только выбранных столбцов в строке таблицы. В любом случае, копируемые данные должны быть совместимы со столбцами целевой таблицы. Например, при копировании содержимого столбца price
столбец, куда копируются данные, должен допускать числовые данные с десятичным разделителем. При копировании всей строки физическое положение совместимых столбцов целевой и исходной таблицы должно совпадать.
При создании запроса вставки результатов внешний вид панели критериев меняется, отражая параметры, доступные для копирования данных. Добавляется столбец «Добавить» позволяющий указать столбцы, в которые необходимо скопировать данные.
Внимание! |
---|
Результат выполнения запроса вставки результатов отменить нельзя. В целях предосторожности перед выполнением запроса рекомендуется создать резервную копию данных. |
Создание запроса вставки результатов
Создайте новый запрос и добавьте таблицу, из которой нужно скопировать строки (исходную таблицу). При копировании строк внутри таблицы в качестве целевой таблицы нужно указать исходную.
В меню Конструктор запросов выберите пункт Тип изменения, а затем пункт Вставить результаты.
В диалоговом окне Выбор целевой таблицы для вставки результатов выберите таблицу, в которую нужно скопировать строки (целевую таблицу).
Примечание. Конструктор запросов и представлений не может заранее определить, какие таблицы и представления можно обновить. Поэтому список Имя таблицы в диалоговом окне Выбор целевой таблицы для вставки результатов содержит все доступные таблицы и представления в запрашиваемом подключении к данным (даже те, в которые нельзя скопировать строки). В прямоугольнике, представляющем таблицу или возвращающий табличное значение объект, выберите имена столбцов, содержимое которых нужно скопировать. Чтобы скопировать строки целиком, выберите * (все столбцы).
Конструктор запросов и представлений добавляет выбранные столбцы в столбец Столбец на панели Критерии.
В столбце Добавить на панели критериев выберите столбец в целевой таблице для каждого копируемого столбца исходной таблицы. Если строка копируется целиком, выберите tablename.*. Столбцы в исходной и целевой таблице должны иметь одинаковые или совместимые типы данных.
Чтобы скопировать строки в определенном порядке, укажите порядок сортировки. Дополнительные сведения см. в разделе Сортировка и группирование результатов запроса (визуальные инструменты для баз данных).
Определите, какие строки необходимо скопировать, указав условие в столбце Фильтр. Дополнительные сведения см. в разделе Определение критериев поиска (визуальные инструменты для баз данных).
Если условия поиска не заданы, в целевую таблицу будут скопированы все строки исходной таблицы.
Примечание. При добавления столбца для поиска на панель критериев конструктор запросов и представлений также включит его в список столбцов, подлежащих копированию. Если столбец нужно использовать только для поиска, но не для копирования, снимите флажок рядом с именем столбца в прямоугольнике, который представляет таблицу или возвращающий табличное значение объект. Чтобы скопировать сводные данные, укажите параметры Group By. Дополнительные сведения см. в разделе Формирование итоговых результатов запросов (визуальные инструменты для баз данных).
Результат выполнения запроса вставки результатов не отображается на панели Результаты. Вместо этого появляется сообщение о количестве скопированных строк.
См. также
Другие ресурсы
Типы запросов (визуальные инструменты для баз данных)
Конструирование запросов и представлений (визуальные инструменты для баз данных)