在SSIS导出中自动转义引号

问题描述 投票:3回答:1

我正在使用带有SSIS的SQL Server 2014

我有这样的数据集:

ID   Name              Status
1    Awesome "Store"   Active
2    Market, Place     Active
3    Vendor            Active

在SSMS中,当结果在网格中并且我右键单击并选择将结果保存为CSV时,原始输出为:

ID,Name,Status
1,"Awesome ""Store""",Active
2,"Market, Place",Active
3,Vendor,Active

我需要使用SSIS将数据从数据库导出到CSV文件,以便原始输出与上面完全相同。我不想做任何派生列来替换字符串或任何可能是每次我需要为新数据集执行此操作的自定义解决方案。

我已经尝试使用平面文件目的地并将文本限定符设置为"但是它会在每个值(不是很大的交易)周围加上引号但是它不会逃避Awesome "Store"中现有的引号到Awesome ""Store""这是我面临的主要问题。

有没有人有解决方案可以实现我想要的?谢谢!

sql-server csv ssis etl
1个回答
1
投票

Editing TextQualified property

在Flat File Connection管理器中,尝试将文本限定符设置为"并转到Advanced选项卡,对于第一列和最后一列,将TextQualified属性更改为FalseRead more

enter image description here

如果这不起作用,我认为没有直接的方法来实现这一点,没有派生列或其他转换。因此,您可以做的最佳解决方法是将目标平面文件中的列分隔符更改为Tab(或任何不同于逗号,

© www.soinside.com 2019 - 2024. All rights reserved.