Спасибо, дикий страх, за ваше предложение:)
Чтобы скопировать DDL всех таблиц в схеме, у меня есть простой способ, который даст нам DDL для всех таблиц:
выберите t1.CREATE_STATEMENT || t2.PK || ');'from (Выберите C.COLUMN_TABLE, 'CREATE TABLE' || C.COLUMN_TABLE || '(' || group_concat ('“' || C.COLUMN_NAME || '“' || '' || COLUMN_TYPE || случай, когда (C.COLUMN_DEFAULT не является нулевым и C.COLUMN_IS_NULLABLE = 'true') или (C.COLUMN_DEFAULT <> 'NULL' и C.COLUMN_IS_NULLABLE = 'false') тогда 'DEFAULT' || C.COLUMN_DEFAULT end ||COLUMN_IS_NULLABLE = 'false', тогда конечный порядок 'NOT NULL' по column_ordinal_position) CREATE_STATEMENT из EXA_ALL_COLUMNS C, где верхняя (C.COLUMN_SCHEMA) = верхняя ('Source_Schema') и column_object_type = 'TABLE__CABLE_COLC_NOWN_CABLE_CALCC.COLUMN_TABLE) t1 левое соединение (выберите CONSTRAINT_TABLE, ', PRIMARY KEY (' || group_concat ('“' || COLUMN_NAME || '“' упорядочьте по порядковому расположению) || ')' PK из EXA_ALL_CONSTRAINT_COLUMNS, где constraint_type = PRIM'и верхняя (COnstraint_SCHEMA) = верхняя (' Source_Schema ') группа по CONSTRAINT_TABLE) t2 в t1.COLUMN_TABLE = t2.constraint_table порядок на 1;
Замените Source_Schema именем вашей схемыd он сгенерирует оператор Create, который вы можете запустить на EXAplus.
Для копирования данных я использовал тот же способ, который вы упомянули на шаге 2.