Ido*_*. J 5 sql sql-server exception
哪个操作成本更高 -SELECT在之前发出查询INSERT,还是在操作期间处理异常INSERT?
例如,假设我想将一些用户请求参数param1(主键和唯一索引)持久保存到数据库表,param2并param3要求在已存在重复键时显示通知。此外,假设它是一个实时场景,整个过程预计不会超过 500 毫秒。
为什么经常建议对三个参数执行插入语句,然后处理插入异常以处理重复项?我知道抛出异常是有成本的——数据库查询的成本是否超过抛出异常的成本?
HLG*_*GEM -1
如果我插入 1,000,000 次并先检查然后插入,即 1,000,000 次检查,也就是说,957,512 次插入,总共针对数据库执行了 1,957,512 次操作。我仍然需要为未通过初始检查的 42,488 条记录中的每一条向用户发送消息。
如果我插入并抛出异常,我将针对数据库执行 1,000,000 个操作,并处理 42,488 个异常。
因此,开展业务的第一种方式是在数据库上进行更多工作。
| 归档时间: |
|
| 查看次数: |
706 次 |
| 最近记录: |