关于对CDR处理的一点感悟(存储过程)

本文探讨了批量自动处理程序的关键要素,包括错误处理、数据保留、索引添加及文档重要性。同时,提供了优化复杂存储过程的策略,如避免在子存储过程处理异常、使用goto和Raiserror的正确方式,以及事务处理的最佳实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于批量自动处理程序

1. 自动处理程序要假设每一个操作步骤(或者模块)都可能会出错的情况下,提供自动处理的解决方案。同时记录好每次处理的行数,便于下次自动从该行继续执行。

2.处理前保存好未分析的原始信息,数据。


关于写复杂的存储过程应注意

1.在子存储过程中不去处理异常,让异常抛出,由主存储过程进行捕获,并统一处理。(该子存储过程主要为主存储过程服务,不可单独运行的那种)。

2.子存储过程的原则:1-做简单,单一的事情 2-不处理错误(即:不加try catch)3-外弹异常,由外层统一处理,回滚。4-若是可相对独立的子存储过程,用return code的方式较好。 若是只依赖于主存储过程的子存储过程,用return error的方式好(便于主存储过程捕捉异常)。

3.外层中的事务,如果被回滚,则子存储过程中的所有(try catch)都会无效,所以还是要写在外层。

4.goto的使用:适合的场合:出错的统一处理。比子函数处理起来方便。不适合的场合:在事务中不能用goto,一旦goto出来了,事务就不配对了。

5.Raiserror的作用:有级别的限制,不要生成过高基本的error。用return中断是比较好的做法。

6.索引的添加:开始可以不必关心,待整个程序做好后,再看哪些列用的比较频繁,只给那些列增加索引。索引的目的不是为了精确到某一行,而是将查询范围缩小到可以接受的数据量就OK。

7.文档的重要性:理想的情况是,做之前先把问题暴露在文档中,文档确定了,程序就按照它来执行,保持二者的一致。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值