一直困惑我很久的问题

accpt16 2009-01-14 04:18:06
为什么执行存储过程要比执行SQL语句快?
网上都说存储过程是与编译过的,到底与编译是个什么东西?
对于处理并发,非得用事务来做吗?不能用其他办法来解决?
提高性能都说要创建索引,到底索引要怎么创建才合理?
说用视图效率低,不也是SQL语句为什么会低呢?

谢谢。。初学者很郁闷很费解啊!!!
...全文
186 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
wojiaochenglong 2009-01-17
  • 打赏
  • 举报
回复
你可以这样与你的组员说:在真实的项目开发过程中,sql语句都是写在存储过程中的。这样做的目的不仅仅是执行速度和网络流量的优势,更重要的是当代码繁多的时候,存储过程可以让
sql语句的结构清晰,也大大减小了管理代码的复杂度,这一点是当sql语句不断增多时你自然知道。
helingling_67 2009-01-17
  • 打赏
  • 举报
回复
学习了~~~~
PrewinZZZ 2009-01-15
  • 打赏
  • 举报
回复
好贴 顶起来!
幸运的意外 2009-01-15
  • 打赏
  • 举报
回复
为什么执行存储过程要比执行SQL语句快?
答:这就是好比楼主第一次去一个陌生的地方要花一定的时间,第二次去就能省下不少时间。存储过程就好比是已经事前知道路线,而单纯的SQL语句则是每次都失去一个陌生的地方。

网上都说存储过程是与编译过的,到底与编译是个什么东西?
答:如同第一问的回答,预编译就是系统提前告诉你数据流怎么走了,该怎么做了。所以可以节省不少时间,相对于普通的非预编译程序。

对于处理并发,非得用事务来做吗?不能用其他办法来解决?
答:用事务来处理处理并发操作,目的是为了当处理并发某一环节出现问题时能及时把数据恢复到处理并发开始之前的状态,保护数据以及数据库。

提高性能都说要创建索引,到底索引要怎么创建才合理?
答:索引可以创建在查询比较频繁,数据量比较大的表中某些字段上,可以最大可能的提高查询效率。

说用视图效率低,不也是SQL语句为什么会低呢?
答:视图数据几乎来自于多个数据表,而对视图的操作实际上就是对这多个表进行的操作,所以效率比较低。
ljluck7687 2009-01-15
  • 打赏
  • 举报
回复
为什么执行存储过程要比执行SQL语句快?
因为存储过程是数据库的一部分,近水楼台先得月,何况它预编译的(事先做了优化处理,再执行时自然会快)


对于处理并发,非得用事务来做吗?不能用其他办法来解决?
可以加锁控制冲突

提高性能都说要创建索引,到底索引要怎么创建才合理?
对主键、外键及经常查询的字段加索引

说用视图效率低,不也是SQL语句为什么会低呢?
视图就是表的数据的一部分的快照,效率不会低
accpt16 2009-01-15
  • 打赏
  • 举报
回复
今天继续讨论啊~
wushilin201 2009-01-15
  • 打赏
  • 举报
回复
上面说得够多,够详细了,我也不重复了!楼主加油!!!
appleller 2009-01-15
  • 打赏
  • 举报
回复
ding
claro 2009-01-15
  • 打赏
  • 举报
回复
帮顶
mengfeihui 2009-01-14
  • 打赏
  • 举报
回复
学习楼主的精神
fulianglove 2009-01-14
  • 打赏
  • 举报
回复
有些东西知道,了解就可以了,何必难为自己。
-狙击手- 2009-01-14
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 accpt16 的回复:]
我已经订了。谢谢happyflystone
[/Quote]

accpt16 2009-01-14
  • 打赏
  • 举报
回复
我已经订了。谢谢happyflystone
-狙击手- 2009-01-14
  • 打赏
  • 举报
回复
是一本书

accpt16 2009-01-14
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 happyflystone 的回复:]
命令解析->优化(规范化,基于成本的最优化等)->生成执行计划

参存储引擎 P32
[/Quote]


存储引擎P32是个什么东西?在SQL里面可以看到吗?
accpt16 2009-01-14
  • 打赏
  • 举报
回复
其实问这个的原因还有一个。就是我现在在做毕业设计,我建议我们小组用存储过程。结果其他成员问我为什么?这个时候我傻眼了。我没有充分的理由说服他们所以在这里问问各位高手。我要怎么说服我的成员呢
-狙击手- 2009-01-14
  • 打赏
  • 举报
回复
命令解析->优化(规范化,基于成本的最优化等)->生成执行计划

参存储引擎 P32
ks_reny 2009-01-14
  • 打赏
  • 举报
回复
mark
-狙击手- 2009-01-14
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 accpt16 的回复:]
网上都说存储过程是与编译过的,到底与编译是个什么东西?
说用视图效率低,不也是SQL语句为什么会低呢?
====================================
这个2个问题能不能也告知下原由
其实最让我郁闷的还是与编译这个词。。。。
[/Quote]

主要分析后形成了执行计划
accpt16 2009-01-14
  • 打赏
  • 举报
回复
网上都说存储过程是与编译过的,到底与编译是个什么东西?
说用视图效率低,不也是SQL语句为什么会低呢?
====================================
这个2个问题能不能也告知下原由
其实最让我郁闷的还是与编译这个词。。。。
加载更多回复(5)

34,576

社区成员

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

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