我们有多个使用Sybase ASE的应用程序(目前从15.0迁移到15.7)。我正在开发一个通用实用程序,可供所有ASE数据库用来清除不需要的旧数据。该实用程序应该在指定的窗口(12:00到3:00 AM)运行,并且可以逐日删除数据,而不会影响其他用户或不关闭数据库。 由于涉及到具有不同参数的多个表,我需要找出一个最佳算法来确定每个事务中删除的行数。 - 是否应使用基于用户缓存/数据缓存/日志空间/其他一些参数的公式计算删除的数据量?如果是这样,你能提一下配方吗? - 目前,我正在使用以下暴力安全限制并循环执行删除查询,在每次循环遍历时提交:
set rowcount 100
此外,我们有办法考虑以下参数吗?如果是这样,我应该给每个参数多少重量?