关键词搜索

源码搜索 ×
×

将pg的表复制到人大金仓

发布2021-06-26浏览1258次

详情内容

下午将pg下的一个表导到人大金仓里。记录一下过程。

1、从pg导出
在人大金仓迁移工具里,没有看到支持pg,因此用不了这个迁移工具。首先进pg,选中源表,鼠标右键,export,导出为csv文件,带标题,utf8编码。

2、到人大金仓中导入
采用人大金仓的终端。

chenqu@chenqu-uos:~/projects/gzdd/cloud$ ksql -h 127.0.0.1 -U SYSTEM -W password TEST
ksql (V008R003C002B0290)
Type "help" for help.

TEST=# copy "system_menu" from '/home/chenqu/Downloads/temp/sys_menu.csv' ( format csv, HEADER );       
COPY 228
TEST=#  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

这里有2个前提,一是目标表要存在,并且与源表结构一致;二是这个csv文件要放在人大进仓数所在的服务器,上面语句的路径,指的是服务器的路径。

实际上我导的时候,进不了服务器。但我本地有数据库,我用的是迂回策略,先导到本地库,然后再在数据库对象管理工具里面,从我本地库复制到目标库。

在这里插入图片描述


2021.06.29
这是另一条导入语句

TEST=# copy STATION from '/home/chenqu/projects/gzdd/temp/station.txt' DELIMITER ',' ENCODING 'GB18030'; 
  • 1

数据文件从第三方接口获得,没有header。为了适配导入,按照数据文件的数据格式,新建了一张表接收。由于数据文件中没有ID列,在数据成功导入后再进行添加:

ALTER TABLE TATION ADD id SERIAL;
  • 1

ID列虽然没有指定值,但系统自动添加了序列。

另外,该数据文件列之间的分隔符为逗号,空格代表换行。从copy的参数来看,没有找到有指定换行符的,只有先用其他文本编辑器,采取正则表达式,将空格替换为回车符号。

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载