导出到 VERTICA
将表数据从一个 Vertica 数据库导出到另一个数据库。
重要
源数据库的版本不得比目标数据库版本大一个主要版本 在目标数据库后面。语法
EXPORT [ /*+LABEL (label‑string)*/ ] TO VERTICA
database.[schema.]target‑table [ ( target‑columns ) ]
{ AS SELECT query‑expression | FROM [schema.]source‑table[ ( source‑columns ) ] }
参数
-
LABEL
将标签分配到语句,以便您可以在分析和调试时识别它。
-
数据库
- 要导出的数据的目标数据库。在启动复制操作之前,当前会话中必须已经存在与该数据库的连接;否则 Vertica 将返回错误。有关详细信息,请参阅 CONNECT TO VERTICA。
-
[schema.]target‑table
- database 中的表用于存储导出的数据。此表不可以包含除原生数组之外的复杂数据类型列。
-
target‑columns
- target‑table 中列的逗号分隔列表,用于存储导出的数据。请参阅源列和目标列之间的映射,如下所示。
-
query‑expression
- 要导出的数据。
-
[schema.]source‑table
- 包含要导出的数据的表。
-
source‑columns
- 源表中要导出的列的逗号分隔列表。此表不可以包含复杂数据类型的列。请参阅下面的源列和目标列之间的映射。
特权
非超级用户:
-
源表:选择
-
源表架构: USAGE
-
目标表: INSERT
-
目标表架构: USAGE
源列和目标列之间的映射
将一个数据库中的所有表数据导出到另一个数据库时,如果两个表中的列定义都符合以下条件,EXPORT TO VERTICA 可以不用指定列列表:
-
列数相同
-
列名相同
-
列序列相同
-
列数据类型匹配或兼容
-
没有复杂的数据类型(ARRAY、SET 或 ROW),原生数组除外
如果其中任何一个条件不成立,则 EXPORT TO VERTICA 语句必须包含将源列和目标列显式映射到彼此的列列表,如下所示:
-
包含相同数量的列。
-
按相同顺序列出源列和目标列。
-
将具有相同(或兼容)数据类型的列配对。
示例
请参阅将数据导出到另一个数据库。