gpt4 book ai didi

sql-server - SSIS - 竖线与逗号分隔

转载 作者:行者123 更新时间:2023-12-03 11:24:17 33 4
gpt4 key购买 nike

我的 SSIS 包有一个小问题。我正在导入一个平面文件。其中一个字段以十进制值传入,即 32.76。它被映射到一个 int 数据类型列。奇怪的是,如果输入的平面文件是逗号分隔的,它将正常导入,尽管值的小数部分被截断了。但是如果平面文件是竖线分隔(|),那么SSIS包会抛出一个错误,提示输入类型是string,不能转换成int类型。这是可以理解的,尽管我不确定为什么逗号分隔会截断,而竖线分隔会引发 fatal error 。这是两者之间的唯一区别。

将列从 int 更改为 decimal 会解决问题吗?我不愿意那样做。

谢谢

最佳答案

逗号与竖线

如果某些字段值包含分隔符,它将导致被视为两个字段,要解决此问题,您必须更改分隔符或向列添加文本限定符。

Text qualifier = Character that text fields are enclosed with

阅读更多 Flat File Connection Manager

如何转换成整数

我不确定 Source 是否对十进制值进行了四舍五入,所以如果该字段包含十进制值,那么您必须将类型更改为 decimal 或将其保留为字符串类型并添加派生列转换或数据转换将其转换为整数(我更喜欢使用第二种方法)。

关于sql-server - SSIS - 竖线与逗号分隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48792701/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com