2

我正在尝试使用带有 BID 的 BIML 和 Visual Studio 2008 创建一个 FuzzyLookup 对象。

以下代码出错并且无法编译并出现错误“无法解析对 dbo.JuniorSurveyResponses 的引用”。对象 dbo.JuniorSurveyResponses 存在,我拥有正确的权限。

如果我删除 FuzzyLookup 创建代码的其余部分编译没有错误。这段代码实际上来自https://www.varigence.com/Documentation/Samples/Biml/Fuzzy+Lookup

关于错误的任何想法?

<Biml xmlns="http://schemas.varigence.com/biml.xsd">
        <Connections>
         <OleDbConnection Name="SportsData" ConnectionString="Provider=SQLNCLI10;Server=myServer;Initial Catalog=myCatalog;Integrated Security=SSPI;" DelayValidation="true" />
        </Connections>
        <Packages>
            <Package Name="My Package" ConstraintMode="Linear">
                <Tasks>    
                    <Dataflow Name="My Dataflow Task">
                        <Transformations>
                            <OleDbSource Name="SurveyResponses" ConnectionName="SportsData">
                                <DirectInput>select * from SurveyResponses</DirectInput>
                            </OleDbSource>
                            <!-- Performs a fuzzy lookup on the Attribute column against the JuniorSurveyResponse DB, and outputs the corresponding Response column to NewResponse. -->
                            <FuzzyLookup Name="Fuzzy Lookup Transformation" ConnectionName="SportsData" Exhaustive="true" >
                                <ReferenceTableInput TableName="dbo.JuniorSurveyResponses" />
                                <Inputs>
                                    <Column SourceColumn="Attribute" TargetColumn="Attribute"  />
                                </Inputs>
                                <Outputs>
                                    <Column SourceColumn="Response" TargetColumn="NewReponse"  />
                                </Outputs>
                                <InputPath OutputPathName="SurveyResponses.Output" />
                            </FuzzyLookup>
                           <FlatFileDestination Name="OutputFile" ConnectionName="FlatFileConnection" Overwrite="true" />
                        </Transformations>
                    </Dataflow>
                </Tasks>
            </Package>
        </Packages>
        </Biml>
4

1 回答 1

4

我认为来自 varigence.com 的引用示例的问题在于它使用ReferenceTableInput. 我相信这意味着它期望<Tables>在您的项目中定义一个集合以及所有这些好东西。

相反,我认为您正在寻找ExternalReferenceTableInput类似的语法

<ExternalReferenceTableInput Table="dbo.JuniorSurveyResponses" />

使用它作为我的来源,我创建了以下模糊查找。

在此处输入图像描述

如果这不是模糊查找的外观,请告诉我。尽管我使用了大量的 SSIS,但我从不使用转换。

对于那些在家里跟随的人,我在我的源系统中创建了两个表作为

CREATE TABLE dbo.JuniorSurveyResponses
(
    Attribute varchar(50)
,   Response varchar(50)
);

CREATE TABLE dbo.SurveyResponses
(
    Attribute varchar(50)
,   Response varchar(50)
);
于 2014-01-31T18:05:08.860 回答