代码之家  ›  专栏  ›  技术社区  ›  user3403757

NVARCHAR数据未传输-SSIS 2008R2

  •  0
  • user3403757  · 技术社区  · 11 年前

    当数据流任务正在完成,表正在加载,但所有字符字段都为空时,我遇到了问题。可悲的是,在开发和测试过程中,所有这些都运行得很好。但dev和prod之间存在环境差异,dev完全是32位的,而prod刚刚设置好,是64位的。

    因此,场景是我使用32位SSIS和SQL Server 2000后端在一台XP机器上构建系统(我目前正在为一家非盈利公司工作,这是他们的全部)。来源是一个火鸟数据库。我已经部署了prod,这是所有日期和数字数据传输的地方,而不是字符数据。

    Prod正在运行Windows 2008 64位到SQL Server 2008 R2 64位。我们安装了32位Firebird ODB驱动程序,设置了Firebird服务,它们都工作正常。在调试菜单中,我将运行64位运行时设置为false。我检查了源任务和目标任务下的所有高级编辑项,看起来没有问题, DT_WSTR NVARCHAR 。我已经在源和目标中进行了预览,并且在源中丢失的数据都显示良好。我在prod和dev环境之间所做的所有更改都是连接配置,通过手动打开它们并更改源的ODBC源和目标的SQL Server来实现。我将Dev数据库离线,以确保没有与糟糕的连接配置更改相关的问题。因此,在调试模式下运行时,会在SQL中为firebird中的每一行创建一行,但只填充数字和日期字段,字符(全部 nvarchar 以匹配火鸟)。

    我错过了什么,这是我第一次32位到64位的转换,我不知道这是否像构建清单那样简单,然后在更改包的连接配置并部署到 MSDB .

    谢谢你的帮助。 做记号

    1 回复  |  直到 11 年前
        1
  •  0
  •   Nick.Mc    11 年前

    到处乱摸我发现了这个

    http://www.sqlservercentral.com/Forums/Topic1254262-364-2.aspx

    (我参与了这件事——我是豆子罐头)

    这意味着将列的重定向属性更改为重定向行,然后再次拾取并将其合并回。

    这毫无意义,但似乎至少对两个人有效。

    也许如果这解决了问题,您可以提供更详细的分析,说明它是如何解决的。

    推荐文章