SSIS BIML生成带括号的SQL代码

时间:2018-02-13 15:30:14

标签: sql sql-server ssis informix biml

我使用BIML为SSIS动态创建加载包,以便将数据从Informix加载到SQL Server。问题是这个BIML代码生成下面的SQL

<DirectInput>SELECT <#=table.GetColumnList()#> FROM <#=table.GetTag("SourceSchemaQualifiedName")#></DirectInput>

SELECT [column1], [column2], [column3], FROM [mySchema].[mySrcTable]

但由于括号,我在源数据库中不起作用。任何方式我都可以得到列表和&amp; tablename没有括号动态?

2 个答案:

答案 0 :(得分:2)

您应该可以使用GetColumnList

的重载方法
<#=table.GetColumnList(string.Empty, "\"", "\"")#>

应该生成一个双引号包装的列名,没有表别名 - 我认为是Informix所期望的。

答案 1 :(得分:0)

这适用于列名和表名:

                        <OdbcSource Name="Data from informix" Connection="Source_Informix">
                            <DirectInput>SELECT <#=table.GetColumnList(string.Empty, "", "")#> FROM schema.<#=table.Name#></DirectInput>
                        </OdbcSource>
                        <OleDbDestination Name="Data to MSSQL" ConnectionName="Target_MSSQL">
                            <TableOutput TableName="<#=table.ScopedName#>"/>
                        </OleDbDestination>