想把csv export到Access里,db2导出数据到文件后发现包含“,”的文本部分被强行拆开了,怎么才能原样db2导出数据到文件

   有时候我们需要将SQL SERVER的数据一次性導入到ORACLE中对于数据量大的表。我一般习惯先从SQL SERVERdb2导出数据到文件特殊格式的平面文件(CSV或TXT)然后用SQL*Loader装载数据到ORACLE数据库。 有时候由于一些特殊数据我们需要db2导出数据到文件一些特殊格式的文件,例如:

    1:db2导出数据到文件的平面文件字段分隔符不要用逗号, 而使用其它分隔符例如 | 或 &等

    2:我们需要一些我们需要db2导出数据到文件的CSV格式的文件,每个字段都用双引号“”括起来

1:db2导出数据到文件的平面文件芓段分隔符不要用逗号, 而使用其它分隔符例如 | 或 &等

我们先看问题1吧,例如我们需要db2导出数据到文件sys.objects下所有对象,在查询结果中选中所有对象然后单击右键,选择”Save Results As"时有可以保持为CSV、TXT或其它文件格式 此时默认的分隔符都为逗号,如果我想用|或&等特殊字符来分隔字段怎么处理呢?

然后在菜单栏上点击“Results to File” 点击执行语句就会将结果保存到文本文件或CSV文件中,此时你去查看db2导出数据到文件结果就会發现分隔符为“|”了。  注意如果你使用“Save Results As" db2导出数据到文件文本文件或CSV格式文件,你会发现永远都是逗号为分隔符

这种方式还有一个最遺憾的就是不能将字段值用双引号括起来。不像PL/SQL Developer这样的工具可以实现这样的功能

    C#程序实现当然是相当麻烦,如果愿意痛苦一次方便以後,这种方法也是可行的

2:我们需要db2导出数据到文件的CSV格式的文件,每个字段都用双引号“”括起来

    这个是否无法借助SSMS客户端工具的配置来完成我倒是有几个方法间接来实现,不过都有些麻烦

1: SQL语句拼接然后选择所有结果,db2导出数据到文件为csv格式

2:借助bcp工具的参数-t指定字符分割符,默认是"\t"

这种方法db2导出数据到文件的文件,第一个字段和最后一个字段都没有的双引号都不全如果你熟悉UltraEdit,那么你可鉯很快的用列模式和替换方式补全另外就是在SQL语句里面分别给第一个字段前面后最后一个字段后面添加双引号解决问题。

我要回帖

更多关于 db2导出数据到文件 的文章

 

随机推荐