高分悬赏,请问使用存储过程的优点

mutr 2003-09-05 05:02:06
请问使用存储过程的优点
包括
什么时候该用存储过程、 什么时候该用视图、 什么时候该用事务
...全文
57 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
w_rose 2003-09-05
  • 打赏
  • 举报
回复
逻辑“确定性”对工作繁忙的人很重要。

存储过程一旦写好,即使它不那么完美,你也会尽量重复使用它,而不会总是把它的代码一遍遍炒来炒去。抄的过程中,万一错了一点,到最后就变成“面目全非”了。
w_rose 2003-09-05
  • 打赏
  • 举报
回复
程序结构化,便于重复利用。从问题出发,从功能的“顶层”展开,逐步(甚至是递归)地解决问题。

不过,我从来不用存储过程。我用触发器和自定义函数。

AKULAKK 2003-09-05
  • 打赏
  • 举报
回复
存储过程是经过编译的2进制代码,放到内存的特定区域,如果调用频繁,就会将该过程放到内存高端,提高命中率,主要是3个优点:
1。不需要验证SQL语法等,直接运行2进制的数据。
2。代码放到内存,高速,重复利用率高。
3。数据层作的事情,多种逻辑层代码都可以调用WEB/APP,提高利用率。

但是不方便数据库移植。
smallroad 2003-09-05
  • 打赏
  • 举报
回复
存储过程速度快、完整性、后台执行
erigido 2003-09-05
  • 打赏
  • 举报
回复
好的一塌糊涂。呵呵~~~~
sdhdy 2003-09-05
  • 打赏
  • 举报
回复
存储过程在后台运行,速度快。
hjb111 2003-09-05
  • 打赏
  • 举报
回复
事务
事务是作为单个逻辑工作单元执行的一系列操作。一个逻辑工作单元必须有四个属性,称为 ACID(原子性、一致性、隔离性和持久性)属性,只有这样才能成为一个事务:

原子性

事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。

一致性

事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。

隔离性

由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。

持久性

事务完成之后,它对于系统的影响是永久性的。该修改即使出现系统故障也将一直保持。

指定和强制事务处理
SQL 程序员要负责启动和结束事务,同时强制保持数据的逻辑一致性。程序员必须定义数据修改的顺序,使数据相对于其组织的业务规则保持一致。然后,程序员将这些修改语句包括到一个事务中,使 Microsoft® SQL Server™ 能够强制该事务的物理完整性。

企业数据库系统(如 SQL Server)有责任提供一种机制,保证每个事务物理的完整性。SQL Server 提供:

锁定设备,使事务相互隔离。


记录设备,保证事务的持久性。即使服务器硬件、操作系统或 SQL Server 自身出现故障,SQL Server 也可以在重新启动时使用事务日志,将所有未完成的事务自动地回滚到系统出现故障的位置。


事务管理特性,强制保持事务的原子性和一致性。事务启动之后,就必须成功完成,否则 SQL Server 将撤消该事务启动之后对数据所作的所有修改。
hjb111 2003-09-05
  • 打赏
  • 举报
回复
存储过程就是SQL的一个批处理命令,有了它,可以让很多可以执行的SQL 语一次执行!

实现多个有关系的表能够不在物理上建表而逻辑上又能表示出一种表的时候就视图!

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧