当前位置: 首页 > 知识库问答 >
问题:

SQL SSI导入具有特定数据类型的CSV

危晨
2023-03-14

我目前有一个表,定期从提供的CSV导入数据。问题是,我有6个数据类型为Decimal(5,2)的列,并且可以为空,当我导入一个不报告任何数字的文件时,这些逗号中显示为“,,,,,,,,,,,,,,,,,,”通常是我希望导入到表中的数字。

当SSIS尝试导入这些“空白”csv时,我得到以下错误

错误:2014-08-04 23:45:01.31代码:0xC020901C来源:数据流任务OLE DB Destination[9]描述:输入“OLE DB Destination input”(22)中的输入列“LaunchBBTime”(85)出错。返回的列状态为:“由于可能丢失数据,无法转换该值。”。结束错误

现在,当我将所有的CULL更改为VARCHAR以进行测试时,它导入空白空间而不存在问题,第二个问题是SSR不能从VARCHAR字段计算平均值(在这种情况下为性能)。

我的问题是,我是否可以适当地获得SSIS将空白列导入到十进制(5,2)字段中,而不需要修改数据类型?

共有2个答案

冯敏达
2023-03-14

将列作为varchar拉入,然后在派生列转换中,创建新的十进制列,这些列将填充以下内容。。。

LEN(LTRIM([InputValue]))==0 ? NULL(DT_NUMERIC,5,2) : (DT_NUMERIC,5,2)[InputValue]
周良弼
2023-03-14

看起来问题是由空格引起的,即. ", ," 而不是“,”,否则数据类型会将字段设置为默认值(在十进制“0”或NULL的情况下,这取决于“从源处保留空值”属性)。如果是这种情况,可能最安全、性能成本较低的解决方案是将csv通过一个预进程来删除空格。

 类似资料:
  • 问题内容: 有没有一种方法可以将JSON数据对象映射到可观察数组,然后又将可观察数组的每一项初始化为特定类型的视图模型? 我已经在这里查看了所有敲除的文档以及敲除和映射示例,但找不到适合我所追求的答案。 因此,我有以下JSON数据: 我有以下视图模型: 使用给定的数据结构并使用基因剔除的映射插件,是否有可能使生成的StateViewModel包含由2个CityViewModel填充的observa

  • 我正在尝试导入一个模块(),该模块是我使用创建的,但出现以下错误:

  • 我在许多组件中使用了几个大型对象,因此我为每个大型对象创建了一个proptypes文件,如下所示: 其中包含从"prop类型"导入PropType; 我在组件中使用对象,如下所示: 它给我一个警告,Prop类型“PropLargeObject”无效,它必须是一个函数,通常来自React。道具类型。我做错了什么?

  • 问题内容: 假设我有一个抽象类 我有一些特定的培训师,例如: 这些“训练者”中的每一个都有一套固定的技巧,他们可以训练动物去做,我想用枚举来做。所以我有一个接口: 在每个培训师中,我都有一个实现此接口的枚举。所以: 现在,在每个Trainer类中,我想要一个方法“ trainingComplete”,该方法以枚举之一作为输入并将其保存到集合中。所以 但是,我不想在每个特定的培训师中定义“完成”集,

  • 如果我有一个单文件Vue类组件,例如: 然后我把它导入其他地方,得到一个实例。 使用标准Vue CLI 3设置,这会出现错误,因为它包含,内容如下: 据我所知,这意味着每当您编写导入Foo时,将只是的别名,您将无法访问其成员。 如果您从文件导入,情况似乎确实如此。如果您从文件导入,它会神奇地工作! 不幸的是,我所有的测试都是文件,因此我无法导入任何组件的类型。这使得测试变得困难。有办法解决这个问题

  • 问题内容: 我今天遇到了与此类似的代码。 似乎暗示数据类型信息可以与NULL值关联。这是否将元数据附加到将其标识为指定数据类型的NULL值? 这篇文章详细介绍了一种在SqlServer中查找数据类型的方法,但是当我尝试以下行时,它以NULL的形式返回: 问题答案: 在SQL Server中,是在默认情况下所有我能想到的场景。您可以使用以下代码确定这一点: 结果: 在将其放入表中或将其与某些上下文元