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-使用sql或udf验证列_Ssis - Fatal编程技术网

SSIS-使用sql或udf验证列

SSIS-使用sql或udf验证列,ssis,Ssis,我正在将数据从excel导入sql server数据库。在导入过程中,我必须验证日期列。验证和更正逻辑已经内置在sql server udf中。如果我将日期和其他几列传递给udf,它将给出有效日期 udf中的逻辑相当复杂,我不想在SSIS中再次维护它。udf不仅仅是进行查找。不止这些 我有没有办法使用sql或udf eXpressions派生一个新列 提前感谢,, rkgSSIS您要查找的组件是。对于通过组件的每一行,它将使用您提供的任何内容调用数据库 在你的情况下,你会看到 SELECT db

我正在将数据从excel导入sql server数据库。在导入过程中,我必须验证日期列。验证和更正逻辑已经内置在sql server udf中。如果我将日期和其他几列传递给udf,它将给出有效日期

udf中的逻辑相当复杂,我不想在SSIS中再次维护它。udf不仅仅是进行查找。不止这些

我有没有办法使用sql或udf eXpressions派生一个新列

提前感谢,,
rkgSSIS

您要查找的组件是。对于通过组件的每一行,它将使用您提供的任何内容调用数据库

在你的情况下,你会看到

SELECT dbo.MyUdf(?, ?, ?) AS IsGood

您可以通过以0为基础的序号位置将各个列连接到

您要查找的组件是。对于通过组件的每一行,它将使用您提供的任何内容调用数据库

在你的情况下,你会看到

SELECT dbo.MyUdf(?, ?, ?) AS IsGood

您可以通过基于0的顺序位置将各个列连接到

使用Excel数据填充暂存表,然后在不同的数据流任务中针对暂存数据运行UDF,与
OLE DB命令
?@siva相比,这可能会成为一个有趣的博客但我认为,由于标量UDF的逐行特性,用户已经在承受痛苦了。我不认为在一次过程中调用它10k次与被评估10k次会增加这种痛苦,这会对性能产生影响。@billinkc在本例中使用OLE DB命令意味着额外的10k网络跳数。这将是性能杀手。谢谢你的回答。我将尝试此方法。我无法在“OLE DB命令”中调用参数化的udf。我可以硬编码参数,但无法映射列。我不得不使用一个返回值的输出参数将udf包装到sp中。与
OLE DB命令
?@siva相比,使用Excel数据填充暂存表,然后在不同的数据流任务中针对暂存数据运行udf在性能上会更好吗?这可能会成为一篇有趣的博文,但我我们认为,由于标量UDF的逐行特性,用户已经在承受痛苦了。我不认为在一次过程中调用它10k次与被评估10k次会增加这种痛苦,这会对性能产生影响。@billinkc在本例中使用OLE DB命令意味着额外的10k网络跳数。这将是性能杀手。谢谢你的回答。我将尝试此方法。我无法在“OLE DB命令”中调用参数化的udf。我可以硬编码参数,但无法映射列。我不得不求助于将udf包装在sp中,并使用一个输出参数返回值。