马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
一、前言
在数据库的导入导出方面,GBase数据库和梧桐数据库有着各自的特点和方法。以下就表数据的导入导出介绍下两个数据库这方面的差别并总结。
二、数据导入
1、GBase库数据导入
GBase数据库在导入数据常使用 LOAD DATA INFILE 语句将数据从文件导入到表中,支持多种数据格式和字段分隔符,详细命令如下:
- LOAD DATA INFILE 'file://主机地址/文件目录/文件名' INTO TABLE 目标表 data_format 3 fields terminated by '|' ;
复制代码 参数表明:
- data_format :指定解析数据文件并加载的方式,如文本方式加载(DATA_FORMAT 3)、定长方式加载(DATA_FORMAT 4)等,示例中指定的方式为 3 文本加载方式
- fields : 段指示,包罗分隔符、包围符、空格处理等。例如,TERMINATED BY用于指定字段分隔符,ENCLOSED BY用于指定字段包围符,示例中设定 TERMINATED BY '|',指定字段分割符为 ‘|’;
- max_bad_records : 设定错误数据行数的上限,当错误数据行数高出此值时,加载任务回滚并报错退出,设置为0时不允许存在错误记录;
- CHARACTER SET : 指定待加载数据文件的编码格式,支持GBK、UTF8等,假如省略,以为不需要转码。
- 引号中为目标文件地址及文件名;
备注
目标文件地址可以是本地文件体系或长途数据源,可以是 FTP、SFTP、Hadoop
例:
sftp://主机账号:主机密码@主机地址//
hdp://主机账号:主机密码@主机地址//
2、梧桐数据库数据导入
梧桐数据库可以使用COPY命令来举行本地文件体系的导入,也可通过外部表获取长途数据源的方式导入,详细命令如下:
使用COPY命令
- \copy table_name from '文件名.csv' WITH FORMAT csv delimiter '|' null as '\\N';
复制代码 参数表明
- table_name 导入的目标表名
- from 后接待导入的文件名
- WITH 后接导入的限定条件,示例中未完全写出
- FORMAT 导入文件格式,要与文件的格式保持划一
- delimiter 指定文件分割符
- null as 指定字段为空值
- segment reject limit 允许的错误最大记录数
- encoding 指定字符集,不指定则为默认
- log errors into 表名,将错误记录数插入日记
相比力于GBase库,COPY命令只能导入本地体系的文件数据,而GBase库可以通过命令导入其他长途数据源的文件,然而梧桐数据库可以通过外部表的方式导入数据,如下:
- CREATE EXTERNAL TABLE test_table
- (column_1 int, column_2 text, column_3 text)
- LOCATION ('gpfdist://文件目录/*.csv') FORMAT 'CSV' DELIMITER ',';
复制代码
- LOCATION:指定文件目次地址及文件名
- 其他参数与上述COPY命令划一,可按照需求添加
备注
gpfdist 是梧桐数据库的并行文件分发步伐,在实验创建外部表时文件所在主机必须要安装该步伐。
创建外部表后可将外部表数据插入本地数据库表中,完成导入操作。
三、数据导出
1、GBase数据库数据导出
GBase数据库在导入数据常使用 SELECT INTO OUTFILE 语句将数据从文件导入到表中,支持多种数据格式和字段分隔符,详细命令如下:
- rmt:select * from 目标表名 into outfile '目标地址/文件名.txt' fields TERMINATED BY ',' enclosed by '"' lines TERMINATED BY '\n';
复制代码 参数表明:
- fields : 字段指示,包罗分隔符、包围符、空格处理等。例如,TERMINATED BY用于指定字段分隔符,ENCLOSED BY用于指定字段包围符,示例中设定 TERMINATED BY '|',指定字段分割符为 ‘|’;enclosed by '"' 指定’ " '为字段包围符;
- lines TERMINATED BY: 指定行分隔符,默以为换行符(\n)。
- WRITEMODE BY:指定导出文件的写入模式。可以是NORMAL(假如文件已存在则报错)或OVERWRITES(覆盖已存在的文件)。
- CHARACTER SET : 指定待加载数据文件的编码格式,支持GBK、UTF8等,假如省略,以为不需要转码。
- rmt:使用rmt前缀可以将数据导出到实验命令的客户端机器上,而不是服务器上.
2、梧桐数据库数据导出
梧桐数据库常使用COPY命令来举行数据的导出,详细命令如下:
- \COPY select * from table_name TO '文件地址/文件名' WITH (FORMAT 'csv',DELIMITER '|', HEADER true);
复制代码 参数表明:
- TO 后接数据导出指定的目次及文件名
- WITH 后接导入的限定条件,示例中未完全写出
- FORMAT 导入文件格式,要与文件的格式保持划一
- HEADER 指定输出文件是否包含列头。可以设置为true或false
- delimiter 指定文件分隔符,示例使用 ’ | '作为分隔符
- ESCAPE 指定转义字符,用于转义引号字符本身或其他特殊字符,默以为反斜杠\
- QUOTE 指定引号字符,用于包围文本字段,默以为双引号"
- encoding 指定字符集,支持GBK、UTF8等,不指定则为默认
梧桐数据库的数据库可视化管理平台也提供了导入导出的功能,可以通过对数据表举行导入导出。
四、总结
GBase数据库和梧桐数据库都提供了丰富的数据导入导出工具和参数,以满足差别场景下的需求。用户可以根据本身的详细需求选择合适的工具和参数举行数据迁移。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |