SSIS包中的DT_NTEXT列和截断警告

时间:2012-10-18 06:03:33

标签: sql sql-server-2008 ssis

我有两个问题:

1)我有一个DT_NTEXT列,其值从数据库中提取并尝试输入Excel中的Test列。我正在使用它之间的数据转换步骤将其转换为DT_TEXT(unicode文本版本)。

最后,Excel Connection Manager正在编写ZERO行(它显示截断警告,但执行时没有错误)。我甚至在数据流中添加了一个数据查看器,其步骤如下:

在将源任务连接到数据转换和数据转换到目标任务的箭头中,双击,然后打开数据流路径编辑器。单击数据查看器,然后单击添加,然后单击确定。将允许您查看正在通过管道的内容。

我在运行我的包裹时没有看到任何差异。

2)我是否可以将DT_NTEXT列转换为DT_WTSR列。在完美的场景中,我应该将此列添加到Excel中的标准nvarchar列中。

1 个答案:

答案 0 :(得分:1)

尝试使用DataType LongText。 将Excel目标放在数据流表面上后,将源连接到目标。单击“新建”以显示Excel工作表的名称。让系统决定数据类型,看看是否能解决您的问题。

这就是我所做的,这有助于我得出这个结论:

  1. 创建表格

    CREATE TABLE [dbo].[ntext]
    (
        [ID] [int] NULL,
        [NTEXT] [ntext] NULL
    ) ON [PRIMARY]
    
  2. 插入一些记录

    1   asdsadsad
    2   qweqerrq
    3   But now, looping through the 351 flat-files to load the voter history records for the State's cities and towns, the package may process a few files, or up to 20 at a pop, before failing. I've been executing the packages interactively.  This is the text from the Output window from the last run:
    4    jus/juice, kilogramme/kilogram, lampe/lamp, mére/mother, nuit/night, océan/ocean, pantalon/pants, quintuplé/
    5   مباشر‎ - استمع مباشرة إلى راديو بي بي ...‎ - أخبار الشرق الاوسط‎ -
    6        Do not know what it says... just copied from some arabic web page from BBC site
    
  3. 使用DFT创建测试包。

    OleDB Source =您创建的表

    Excel Dest =创建新的OLEDB连接管理器

    数据访问模式=表格或视图

    Excel工作表的名称...选择新建...