问题标签 [ssis-data-types]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1111 浏览

sql - SSIS 条件过滤器按位数据类型拆分

数据 - 来自表(58 列),在此表中,4 列将用于条件过滤器。

1 列 - 位数据类型(Color_Ind)

1 列 - 位数据类型(Type_ind)

2 列 - varchar 数据类型(区域、州)

处理步骤 1) OLE DB 连接提取所有数据

2)使用数据转换将位类型列转换为字符串数据类型。

3)使用条件过滤器将数据过滤成5个不同的类别。

问题:- - 如果我使用 color_ind 和 Type_ind 它不会创建我想要的输出,但是如果我在没有这些列的情况下使用它并且只使用 Region 和 state 它将创建我想要的输出。

您能否告诉我如何在 SSIS 中将位数据类型用于条件过滤器?

感谢你的帮助。

谢谢

0 投票
2 回答
1911 浏览

sql-server - SSIS 未将日期和货币类型作为格式正确的字符串导出到平面文件

我正在导出一个将被另一个系统拾取的文件。为了避免在其他系统中返工,我试图完全匹配现有的 excel csv 输出。我在数据库中有一个日期列,我想将其导出为 dd/mm/yyy。在数据流任务中,我将以下 SQL 作为进行适当转换的源。如果我在 ssms 中运行此查询,我会得到正确的输出。

然后我将它链接到一个平面文件目标,它映射到的列设置为 DT_SR 宽度 20 不是文本限定的。

但输出文件以 yyyy-mm-dd 格式输出日期。

同样对于grossamtyrly,旧的excel生成的csv在每3位数字后面都有逗号,用“包裹。它映射到的输出列是DT_SR宽度20,文本限定为真。

该列的输出文件缺少 Grossamtyrly 的逗号。

所以看起来我在 SQL 中的转换被完全忽略了,但我不知道为什么。

在此先感谢您的任何建议!

使用 SSIS 2012 - Visual Basic 2010,DB 是 SQL Server 2012

0 投票
1 回答
979 浏览

sql-server - SSIS如何找到正确的数据类型?

背景:这是我学习 ETL 的第一天。之前接受过一点计算机科学培训(不是很系统)。

所以我在 msdn 上学习这个 SSIS 教程(https://msdn.microsoft.com/en-us/library/ms170583.aspx?f=255&MSPPError=-2147217396),其中一个步骤是从平面文件。

在此处输入图像描述

我以前从未遇到过这种数据类型(我的意思是那些 [DT_WSTR] 的东西)。我的问题是如何在平面文件连接管理器编辑器中为我的目标列找到正确的数据类型?完整的数据类型参考列表将是完美的。谢谢大家!

0 投票
1 回答
581 浏览

sql - SSIS Excel Source 不允许我将 DT_DATE 更改为 DT_WSTR

我有一个 SSIS 包,可将数据从 excel 源导入 SQL Server DB。该文件有一个名为[Client Date Of Birth]通常是有效日期的列。我说通常是因为数据是由我们客户的代理输入的,可以是从02/24/2017Feb 17甚至只是2017. 我实际上需要将这些数据作为字符串输入,因为我们对这些日期进行了部分比较,因此数据按原样输入在Feb 2017技术上仍然可以。

问题是 SSIS 自动确定此列是[DT_DATE]类型。我尝试将[DT_WSTR]源的高级编辑器的外部列部分中的数据类型更改为,但是当我单击确定时,SSIS 会自动将其切换回[DT_DATE]. 如何让 SSIS 将此列作为字符串导入?

还应该注意的是,这是一个自动过程,所以我不能对 excel 文件本身进行任何更改,因为它每周都会被一个新文件替换。

0 投票
1 回答
901 浏览

excel - 将虚拟单行添加到 SSIS 中 excel 文件的第一行

我每周都会收到 excel 文件。假设它有以下列:

我面临列数据类型的问题。SSIS excel 源正在考虑与字符串相同的列数据类型,有时为 Unicode 字符串,有时为基于底层 excel 数据的 Unicode 文本流。

所以我想要做的是添加包含 Unicode 文本流数据的虚拟行,并使用脚本组件将其插入到 excel 的第一行。因此,当我阅读该 excel 时,SSIS excel 源每次都会自动将这些列检测为 Unicode 文本流,以后使用数据转换我可以将一些列转换为适当的数据类型。我想知道如何将虚拟文本行插入 excel 的第一行。现有的列数据将跟随该虚拟行数据。

目标:

1)获取excel文件,

2)读取excel并将虚拟“文本”行添加到第一行并使用SSIS源脚本组件保存到其他名称。

0 投票
2 回答
896 浏览

sql-server - 时间戳到 Bigint (MSSQL) 与 DT_BYTES 到 DT_I8 (SSIS)

在处理来自 SQL Server 的“时间戳”数据类型时,我在 SSIS 中进行正确的数据转换时遇到问题。

我有一张使用 SSIS 暂存的表。在我的数据流任务 (DFT) 顶部的源选择中,它看起来像这样:

我想将 [SourceColumn1Timestamp] 转换为 Bigint,但在 SSIS 内部使用数据流任务中的数据转换组件。像这样:

在此处输入图像描述

因此,作为“DT_BYTES”SSIS 数据类型的输入列“timestamp”被转换为 DT_I8。

然而结果与我的预期完全不同。与我在 SQL 中进行转换时得到的结果不同,将 DFT 中的源选择调整为:

怎么来的?

这里有一行显示了 SQL 转换和 SSIS 之间的区别: SQL: 在此处输入图像描述

SSIS: 在此处输入图像描述

0 投票
1 回答
215 浏览

sql-server - SSIS 接收 Excel 列作为 DT_IMAGE

专家们,祝您有美好的一天。

我遇到了一个 Excel 97-02 .xls 文件的问题。在 SSIS 中将其添加为源时,我得到一个DT_IMAGE的外部列数据类型。该列表示一个 ID,并且仅为数字。由于DT_IMAGE数据类型,我无法提取和处理数据。设置IMEX=1没有帮助。

先感谢您。

0 投票
2 回答
1532 浏览

csv - 平面文件目标列数据类型验证

INT 类型的源数据库字段通过 OLE DB 源读取。它最终被写入平面文件目标。目标平面文件连接管理器 > 高级页面将其报告为four-byte signed integer [DT_I4].

这种数据类型让我觉得它表示二进制。显然,事实并非如此。我很惊讶它不是更通用的numeric [DT_NUMERIC]

我将此类型设置更改为single-byte signed integer [DT_I1]. 我预计这会失败,但事实并非如此。该过程产生了相同的结果,即使该字段的值始终 > 127。为什么这没有失败?

产生的一些值是

显然,超出了 a 的范围single-byte signed integer [DT_I1]

作为一个相关问题,是否可以将二进制数据输出到平面文件?如果是这样,应该使用什么设置和在哪里?

0 投票
1 回答
47 浏览

sql-server - 转换数据类型时 ssis 中的问题

您好在理解 ssis 中的数据转换时遇到问题。什么时候应该转换数据类型,我应该总是转换还是只在 ssis 有数据类型兼容性问题时才转换?

我很难理解当我从 excel 导入到 sql server 或从 sql server 到 excel 或从文本文件文件到 sql server 或从 sql server 到文本文件等时是否应该转换?

请帮助我理解 ssis 中的数据转换。

0 投票
1 回答
419 浏览

sql-server - 从高级编辑器与数据转换转换更改数据类型

我正在使用 SSIS 创建一些包。我对数据转换转换组件和从高级编辑器更改列数据类型感到困惑

如果我可以进入高级编辑器并更改输出的数据类型,为什么我需要输入数据转换转换?

这只是偏好还是使用这两种方法有区别?