SSIS BIML 生成 SQL 带括号的代码

SSIS BIML generates SQL code with brackets

我正在使用 BIML 为 SSIS 动态创建加载包,以将数据从 Informix 加载到 SQL 服务器。问题是此 BIML 代码会生成下面的 SQL

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

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

但是由于括号的原因,这在我的源数据库中不起作用。我可以通过任何方式动态获取不带括号的列列表和表名吗?

您应该可以使用 GetColumnList

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

这应该产生一个双引号包裹的列名,没有 table 别名 - 我 认为 是 Informix 所期望的。

这适用于列名和 table 名称:

                        <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>