Базы данных Oracle - статьи



Копирование данных из одной базы данных в другую


Утилита SQL*Plus предлагает собственные средства копирования данных из одной базы данных в другую и из одной таблицы в другую. Для этого используется команда COPY, которая позволяет:

  • копировать данные с удаленной базы данных в текущую;
  • копировать данные из текущей базы данных на удаленную;
  • копировать данные из одной удаленной базы данных в другую.
  • Примечание

    В общем случае, предполагалось копирование данных между базой данных Oracle и базой данных другого производителя. В среде Oracle для копирования данных можно использовать SQL-операторы (CREATE TABLE AS и INSERT).

    Команда COPY имеет следующий синтаксис:

    <команда COPY> ::=

    COPY <направление копирования> <действие копирования>

    <имя целевой таблицы> [(<имя столбца>{, <имя столбца>})] USING <запрос>

    <направление копирования> ::=

    FROM <база данных>

      | TO <база данных>

      | FROM <база данных> TO <база данных>

    <база данных> ::=

    <имя пользователя>[/<пароль>]@<строка связи>

    <действие копирования> ::=

    APPEND | CREATE | INSERT | REPLACE

    Она копирует данные, возвращаемые запросом, в таблицу в локальной или удаленной базе данных. Поддерживаются только базовые типы данных (CHAR, DATE, LONG, NUMBER, VARCHAR2) и в будущих версиях (после 9.0.1) поддержка этой команды не гарантируется.

    Если в конструкции <база данных> пароль не указан, SQL*Plus запросит его перед выполнением команды.

    Действия копирования описаны в .

    Таблица 12. Действия копирования команды COPY.

    Действие Описание
    APPEND

    Вставляет возвращенные запросом строки в целевую таблицу, если она существует. Если же таблица не существует, она создается.

    CREATE

    Вставляет возвращенные запросом строки в целевую таблицу, предварительно создавая ее. Если же таблица уже существует, возвращается сообщение об ошибке.

    INSERT

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

    REPLACE

    Заменяет целевую таблицу и ее содержимое строками, возвращенными запросом. Если целевая таблица не существует, она создается. В противном случае, существующая таблица удаляется и вместо нее создается новая, содержащая скопированные данные.

    <


    Содержание  Назад  Вперед