我把几个Delete语句写在一个存储过程中 执行起来快不快?怎么写速度会快一点

hhfh 2005-10-11 12:15:48
Create procedure sp_DeleteAll
@id int
As
Delete From tab1 where id=@id
Delete From tab2 where id=@id
Delete From tab3 where id=@id
go
我把几个Delete语句写在一个存储过程中 执行起来快不快?
怎么写速度会快一点
...全文
113 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
iwl 2005-10-12
  • 打赏
  • 举报
回复
肯定会快一点
wgsasd311 2005-10-11
  • 打赏
  • 举报
回复
效果是一样的。
vivianfdlpw 2005-10-11
  • 打赏
  • 举报
回复
好像没更好的方法,另外建议放在事务中

Create procedure sp_DeleteAll
@id int
As
set xact_abort on
begin tran
Delete From tab1 where id=@id
Delete From tab2 where id=@id
Delete From tab3 where id=@id
commit tran
go
samfeng_2003 2005-10-11
  • 打赏
  • 举报
回复
好象只能这样写吧!其他没有什么好办法了!如果想优化,那么可能要从你建立索引上考虑了!
zxbyhcsdn 2005-10-11
  • 打赏
  • 举报
回复
在一个存储过程中当然要快了哟!!

你也可以传三个Sql语句过去,一起执行

self.AdoQuery.Sql.text
:="Delete From tab1 where id=@id;Delete From tab2 where id=@id;Delete From tab3 where id=@id"

self.AdoQuery.exexusQl

22,294

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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