Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssis 使用SSI导出Varbinary(max)列_Ssis - Fatal编程技术网

Ssis 使用SSI导出Varbinary(max)列

Ssis 使用SSI导出Varbinary(max)列,ssis,Ssis,我们有一个带有varbinary(max)列的表,该列用于应用程序中的富文本字段(不用于附加文档)。 我试图通过一个非常简单的ssis包将列导出到平面文件中。 我的包包含oledb文件和平面文件目标 当我打开平面文件输出时,我惊奇地发现数据被截断为255个字符,你知道如何完全导出所有数据吗 谢谢你的帮助 在等待关于您打算如何使用它的澄清时,我建议您看一下。在这个问题上也有类似的需要 我快速制作了一个示例,演示了如何导出varbinary数据。以下查询将一些字符串连接在一起,然后将它们转换为va

我们有一个带有varbinary(max)列的表,该列用于应用程序中的富文本字段(不用于附加文档)。 我试图通过一个非常简单的ssis包将列导出到平面文件中。 我的包包含oledb文件和平面文件目标

当我打开平面文件输出时,我惊奇地发现数据被截断为255个字符,你知道如何完全导出所有数据吗


谢谢你的帮助

在等待关于您打算如何使用它的澄清时,我建议您看一下。在这个问题上也有类似的需要

我快速制作了一个示例,演示了如何导出varbinary数据。以下查询将一些字符串连接在一起,然后将它们转换为varbinary(max)。它还生成第二列,该列将是所使用的输出文件

WITH STARTER(starter) AS
(
    -- some simple data
    SELECT 'a'
    UNION ALL SELECT 'b'
    UNION ALL SELECT 'c'
)
,  VCM(longenough) AS
(
    SELECT
        CAST(REPLICATE(T.starter, 8000) AS varchar(max))
    FROM
        STARTER T
)
SELECT
    CAST(V0.longenough + V1.longenough AS varbinary(max)) AS BlobData
,   'C:\ssisdata\filename.' + CAST(row_number() OVER (ORDER BY (SELECT NULL)) AS varchar(10)) + '.txt' AS FileName
FROM
    VCM V0
    CROSS APPLY
    VCM V1;
配置SSI很简单。我使用上面的查询作为我的源。

我确保元数据看起来和预期的一样-是的,BLobData列是一个图像

配置导出列转换。如果文件已经存在,任务将失败,如图所示。您可能需要选中“允许追加”或“强制截断”选项


在等待关于您打算如何使用它的澄清时,我建议您查看。在这个问题上也有类似的需要

我快速制作了一个示例,演示了如何导出varbinary数据。以下查询将一些字符串连接在一起,然后将它们转换为varbinary(max)。它还生成第二列,该列将是所使用的输出文件

WITH STARTER(starter) AS
(
    -- some simple data
    SELECT 'a'
    UNION ALL SELECT 'b'
    UNION ALL SELECT 'c'
)
,  VCM(longenough) AS
(
    SELECT
        CAST(REPLICATE(T.starter, 8000) AS varchar(max))
    FROM
        STARTER T
)
SELECT
    CAST(V0.longenough + V1.longenough AS varbinary(max)) AS BlobData
,   'C:\ssisdata\filename.' + CAST(row_number() OVER (ORDER BY (SELECT NULL)) AS varchar(10)) + '.txt' AS FileName
FROM
    VCM V0
    CROSS APPLY
    VCM V1;
配置SSI很简单。我使用上面的查询作为我的源。

我确保元数据看起来和预期的一样-是的,BLobData列是一个图像

配置导出列转换。如果文件已经存在,任务将失败,如图所示。您可能需要选中“允许追加”或“强制截断”选项


该字段是输出文件中唯一的字段,还是看起来像col1 | col2 | col3varbinmax?它不是输出文件中唯一的字段,该表还包含int和varchar等普通数据类型。那么您能提供一个预期输出的示例吗?明显截断varbinary数据是为了使该字段成为输出文件中的唯一内容,还是看起来像col1 | col2 | col3varbinmax?它不是输出文件中的唯一字段,该表还包含int和varchar等普通数据类型。那么,您能提供一个预期输出的示例吗?明显地截断varbinary数据你能提供一个你期望的输出的例子吗?当一个嵌入的回车符返回varbinary数据时,它应该如何表现呢?嗨,我们可能需要解决导出列comp的问题。并使用文件路径添加另一列。thx谢谢您的帮助您能提供一个您预期输出的示例吗?当一个嵌入的回车符返回varbinary数据时,它应该如何表现呢?嗨,我们可能需要解决导出列comp的问题。并使用文件路径添加另一列。谢谢你的帮助