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


Копирование данных из одной базы данных в другую - часть 2


/p>

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

По умолчанию, утилита SQL*Plus выполняет фиксацию транзакции после успешного завершения команды COPY. Если выполнить команду , где n - положительное целое число, фиксация будет выполняться после каждого n-го пакета записей. Размер пакета задается с помощью команды .

Вся команда COPY должна поместиться на одной строке. Если необходимо перенести команду на следующую строку в конце строки необходимо ввести дефис (-).

Рассмотрим простой пример копирования таблицы:

SQL> copy from scott/tiger@training -

> create emp10 -

> using select * from emp where deptno = 10;

Размер массива выборки/привязки равен 15. (arraysize равен 15) Фиксация по завершении. (copycommit равен 0) Максимальная длина равна 80. (long равна 80) Таблица EMP10 создана.

3 строк выбрано из scott@training. 3 строк вставлено в EMP10. 3 строк зафиксировано в EMP10 по соединению DEFAULT HOST.

SQL> set linesize 100 SQL> select * from emp10;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ------ --------- ------- -------- ---------- ------ ------ 7782 CLARK MANAGER 7839 09.06.81 2450 10 7839 KING PRESIDENT 17.11.81 5000 10 7934 MILLER CLERK 7782 23.01.82 1300 10




Начало  Назад  Вперед



Книжный магазин