使用quote自定义引用字符
最近更新时间: 2025-02-18 16:02:00
postgres=# copy t to '/data/pgxz/t.txt' with csv;
COPY 3
postgres=# \! cat /data/pgxz/t.txt
1,TDSQL PG,,7
2,"pg'"", xc%",2017-10-28 18:24:05.643102,3
3,pgxz,2017-10-28 18:24:05.645691,
#默认引用字符为“双引号”
postgres=# copy t to '/data/pgxz/t.txt' with quote '%' csv;
COPY 3
postgres=# \! cat /data/pgxz/t.txt
1,TDSQL PG,,7
2,%pg'", xc%%%,2017-10-28 18:24:05.643102,3
3,pgxz,2017-10-28 18:24:05.645691,
#上面指定了引用字符为百分号,系统自动把字段值为%的字符替换为双个%
postgres=# copy t to '/data/pgxz/t.txt' with quote '%';
ERROR: COPY quote available only in CSV mode
#只有使用 CSV格式时才允许这个选项。
postgres=# copy t to '/data/pgxz/t.txt' with quote '%%' csv;
ERROR: COPY quote must be a single one-byte character
postgres=#
#引用字符必须是一个单一的单字节字符,即汉字是不支持的。