注册
关于使用dmfldr遇到的问题
专栏/培训园地/ 文章详情 /

关于使用dmfldr遇到的问题

DM_295737 2025/02/28 164 0 0
摘要

为了备战达梦DCP考试,在本地环境测试dmfldr快速导入功能。期间遇到一个问题:同一台机,dmfldr直接使用参数导入不能正确读取我的本地文件,导致导入报错,而采用control的方式可正常导入。几经周折,最终发现是命令使用错误导致。
数据表结构如图:
图片.png
测试过程如下:
1.首次采用fmfldr导入时,由于源数据质量问题(文件中的列比表实际列少),因此导入报错。
图片.png
图片.png
之后我将源文件的数据列和表数据对齐,导入还是报错
图片.png

2.尝试新编辑一个数据文件(/opt/prod1.dat),只保留一行数据与表结构列数相同的数据,测试导入,依旧显示导入报错,且报错和之前报错相同(16行导入失败,实际上我当前的数据文件只有一条数据)。看似依旧读取了原文件(/opt/prod.data),不管我如何调试,一直报这个错。这里的报错具有很强的欺骗性,导致我一直绕不出来。
图片.png
图片.png

3.没办法,尝试采用control的方式进行导入,竟然奇迹般的导入成功。
图片.png
图片.png
图片.png

4.此时自我怀疑,是不是自己操作有问题。然而后续进行多轮测试,结果一样,直接采用参数导入不能正常读取修正后的正确的数据文件,导入失败。而采用control的方式,可以正常导入成功。

5.最终经达梦原厂指点,很尴尬,发现问题原因是我采用命令行导入时,应指定列分隔符FIELD_SEPERATOR为",",而不是行分割符ROW_SEPERATOR为","。使用正确命令后导入成功。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服