首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过数据库循环查找表和删除旧行的SSIS包

通过数据库循环查找表和删除旧行的SSIS包
EN

Stack Overflow用户
提问于 2017-06-09 02:54:05
回答 1查看 3K关注 0票数 1

在创建一个包时,我需要帮助,它可以遍历给定服务器中的数据库,查找包含单词“EventLog”的表名,并删除超过一年的所有行。删除应批次为50000。

我能够使用Execute SQL任务读取数据库名称,将完整的结果集存储在一个对象类型变量中,并用于每个循环容器来读取变量的结果,并需要那里的帮助。

EN

回答 1

Stack Overflow用户

发布于 2017-06-17 22:43:23

如果单个数据库中可能包含“EventLog”一词的多个表,则需要为父容器内的每个表(每个表)添加一个附加项。使用父容器和当前容器中的变量在其中为每个容器构建一个动态删除语句。

您的包应该非常类似于此:

控制流

包变量

将日期筛选器添加到“delete_log_records_sql”变量中

获取数据库名称-执行SQL

获取DB名称-将结果分配给对象

Foreach DB - DB名称对象Var映射

Foreach DB - DB名称集合Var映射

获取表名-执行SQL

获取表名-将结果分配给对象

Foreach表-表名对象Var映射

Foreach表-表名集合Var映射

删除日志记录-执行SQL

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44448558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档