用oracle imp跳过一个表的插入

我正在做一个oracle的imp,并在转储有一个大表,我只想创build,但不插入行。

这可能吗 ?

Exp在10.2.0.4上完成。 我正在做XE(10.2.0.1)的imp。

你使用的是经典的导出和导入工具吗? 还是新的DataPump版本? 我从你的引用中推断出“exp”和“imp”,而不是“expdp”和“impdp”,你使用的是经典版本而不是DataPump版本。 如果是这样,这大大减less你的select。

在传统的导出和导入实用程序中,ROWS = N参数适用于所有表。 所以没有单一的命令行来“将所有的数据导入到所有的表格中,而只有一个”。 但是,你可以做一系列的import

  • 使用ROWS = N进行第一次导入,以导入所有表的结构,但不导入任何数据。
  • 使用ROWS = Y和TABLES =( <<list of all other tables>> )进行第二次导入

由于您已经完成了第一次导入,因此只需查询DBA_TABLES (或ALL_TABLESUSER_TABLES )数据字典视图即可生成第二次导入的表的列表。

当然如此。

“imp”有一个“ROWS”参数。 如果将ROWS = N设置为您的命令行,则导入将跳过数据插入。

编辑:它将跳过所有表的行。 如果你想跳过只有一个表的行,我想你将不得不在两个不同的步骤进行导入。 一个用于只导入这个特定的表,一个用于其他表的一个步骤。