我需要将从其他DBMS导出的CLOB和BLOB对象导入PostgreSQL。这些LOB是一个单独的文件,其路径引用放在CSV文件中。表的结构是(id int PK,clobcol text)。 以下是示例结构:
data.csv
1|some_clob.dat
2|some_clob.dat
配置文件: pgloader.conf
[pgsql]
host = localhost
port = 5432
base = test
user = some_user
pass =
log_file = d:/tmp/pgloader.log
log_min_messages = DEBUG
client_min_messages = WARNING
lc_messages = C
client_encoding = 'utf-8'
copy_every = 5
commit_every = 5
#copy_delimiter = %
null = ""
empty_string = "\ "
[clob]
table = clob_table
format = text
filename = D:/pgloader-2.3.2/test/data.csv
field_sep = |
quotechar = "
columns = id:1, clobcol:2
index = id:1
blob_columns = clobcol:2:ifx_clob
对于那个导入我决定使用PGloader工具(Python脚本,我在Windows BTW上)。但是当我执行时:
pgloader.py -c pgloader.conf
我在日志文件中收到错误:
Warning: column 'clobcol' is not a valid blob reference: d:/pgloader-2.3.2/test/clob.out
need more than 1 value to unpack
COPY error on lines 1
并且记录以下列形式登陆数据库:(id:1,clobcol:'some_clob.dat')。 我不知道什么是错的,以及如何纠正。你能给我任何建议吗? 谢谢
此致
答案 0 :(得分:0)
已解决:缺少要复制的CLOB数据范围。 E.g:
1|0,25,some_clob.dat