gpt4 book ai didi

sql - SSIS 包循环遍历数据库以查找表并删除旧行

转载 作者:搜寻专家 更新时间:2023-10-30 23:34:50 27 4
gpt4 key购买 nike

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

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

最佳答案

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

您的包应该看起来与此非常相似:

控制流 enter image description here

包变量 enter image description here将您的日期过滤器添加到“delete_log_records_sql”变量

获取数据库名称 - 执行 SQL 任务 enter image description here

获取数据库名称 - 将结果分配给对象 Var enter image description here

Foreach DB - 数据库名称对象 Var 映射 enter image description here

Foreach DB - 数据库名称集合 Var 映射 enter image description here

获取表名 - 执行 SQL 任务 enter image description here

获取表名 - 将结果分配给对象 Var enter image description here

Foreach 表 - 表名对象变量映射 enter image description here

Foreach 表 - 表名集合 Var 映射 enter image description here

删除日志记录 - 执行 SQL 任务 enter image description here

关于sql - SSIS 包循环遍历数据库以查找表并删除旧行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44448558/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com