我正在使用SSDT并使用简单的SSIS包 .
控制流程:1 . 一个Foreach循环容器,并寻找一个文件夹存在“importdata {} . csv”文件与否 . 2.如果找到,脚本任务将设置变量: - User :: FullPath =(例如C:\ importdata {} . csv) - User :: varFileNameNoExt =(importdata {})没有扩展名 . 可以在"toy","game","food"中使用{} . 3.转到数据流
数据流:1 . 平面文件源与平面文件连接,连接字符串是可变的并映射连接字符串表达式 . 2.ADO.NET目的地,插入数据 .
我的问题是如何在变量中设置ADO.NET Destination [TableOrViewName]属性?假设表:在SQL Server上创建了importdatatoy,importdatagame和importdatafood .
我尝试设置为 "dbo"."[User::varFileNameNoExt]" ,但它无法在运行时解析表名 .
2 回答
ADO.NET目标[TableOrViewName]参数化可以在数据流级别完成 . 在数据流属性中,您可以指定“ADO.NET Destination [TableOrViewName]” .
在为变量Eg分配值时也指定引号:varFileNameNoExt =“dbo” . “tableName”
但首先,您需要使用现有表创建映射 .
你可以发布你的错误信息吗?我'm thinking you won'能够在TableOrViewName字段内组合静态文本和类似的变量 . 而是在新的[User :: varTableName] SSIS变量中进行组合,并使用“高级属性表达式”编辑器将TableOrViewName设置为此新的SSIS变量 . 看看here .