作者rushcat (嗯)
看板Database
标题Re: 网管人
时间Fri Jul 2 13:18:07 2010
※ 引述《RichFU (小富哥~~~)》之铭言:
: 请问为什麽现在很多application都尽量避免把mail logic放在
: stored procedure呢?
: 以stored procedure方式可以集中化处理逻辑,也可以减少
: application对资料库的呼叫次数,效能上不是也会比较好?
: 还是有什麽缺点存在所以才避免放在procedure?
1F:推 JoeHorn:维护、除错的方便,DBMS 异质整合、转移、备份、更版...07/01 22:36
我也有原PO的疑问
可以在DB内一次处理好的事情 为何要拉到AP上来做呢!?
目前还没碰到大型的专案 所以真的不太清楚SP的缺点
(除了SP真的很难Debug...)
今天如要UPDATE一笔User资料 可能需要三句SQL指令
(判断是否已存在 选择要Insert Or update)
1. SELECT * FROM User WHERE User_Id = @User_Id
2. INSERT INTO User VALUES(User_Id, User_Name)
3. UPDATE User SET User_Name = @User_Name WHERE User_Id = @User_Id
如果全部写在AP里 需要二次DB Connection
那一般这种状况会用SP吗!?
又假设今天可能要从三个Table各自抓出资料做运算然後再存回另外一个Table
如果单纯以AP来做的话 可能就是各自抓出来塞进变数
然後排列组合运算後再存进另一个Table
这样一来不就会用到更多DB Connection!?
一直以来观念都是 DB Connection是最耗资源的部份
所以像这种状况 只要不涉及太复杂的逻辑 (SP无法处理)
通常都会在SP里处理掉就好
想请教除了Debug以外 有没有其他缺点的实际状况能够描述一下!?
--
◢ █◣ ◢◢◣ ◢◣◥████
◢███◣ ◢ ◣ █╴█╴█ ████
███▉█ ◢█◢ ◣◢ ██ ≡███≡ ◥█
███▉█ ◢▉█ ◢██ ███ ◢██ ◢██ ███ ◥█﹋█◤ ◎ █
█▇▇▇◤ █▉█ █▇▇ █▇▏ ▉▇▇ █▉█ ██ ▉▉█▏▏/ ◢█
██▇▏◣ █▇█ ▇▇█ ██▏ ███ █▇█▎██ █▉▉█▏▏█ rushcat
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.87.128.113
※ 编辑: rushcat 来自: 219.87.128.113 (07/02 18:16)