繁体   English   中英

从CSV导入PSQL添加其他字符

[英]PSQL import from CSV adding additional characters

我有一个CSV文件,我在其中导入了许多字段...其中一个字段是日期类型字段,格式为'20120401'。 在CSV文件中,所有行的此字段的长度为8.我在Postgres中创建了一个表,并指定该字段以将此数据作为DATE类型列接收。 当我导入CSV文件时,它引发了“无效的输入错误”。 为解决这个问题,我将表的类型更改为VARCHAR,以为我可以运行ALTER TABLE来更改数据类型。 导入成功,但ALTER TABLE没有。 我注意到第一行的日期长度为9,而所有剩余行的标准值为8。 不知何故,在导入中它获得了另一个角色,对于我的生活,我无法确定它来自何处。 我做了一堆TRIM操作(TRIM,BTRIM),但仍然可以产生9个字符。 有什么建议么? 如果我删除这一行,ALTER TABLE语句将其更改为DATE类型。 所以它真的只有这一行。

以下示例:

20150401    My  Gll ES  1A3AE039E352    GCE 0.2461158

20150401    My  Gll ES  1F63E45849F1    GCE 0.8670354

凝视我的水晶球,我发现它是文件开头的字节顺序标记 (BOM)。

这将是UNICODE字符U + FEFF,在UTF-8中它将是EF BB BF。

虽然字节顺序标记在UTF16编码中用于确定字节顺序 ,但在UTF-8中它们是无用的,但是某些操作系统将它们用作表示“此文件是UTF-8”的标记。

你必须删除该角色。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM