发布网友 发布时间:2022-09-16 21:05
共2个回答
热心网友 时间:2023-10-14 04:31
1首先存储过程是预编译,按理说应该会比程序运行的语句效率高,如果时间反而长的话,可能是统计信息没有及时更新导致优化器给存储过程与单语句生成了不同的查询计划,而用片面的统计信息生成的查询计划会导致索引利用率低效,试试更新统计信息或者重建/重组索引热心网友 时间:2023-10-14 04:32
1.我写了一个极简单的存储过程,两个表join后查询,但是测试的时候发现存储过程用的时间要比直接用SQL语句多,为什么,半天没有搞懂,请高手指教!答:在SQL中存储过程和视图都是预编译好的,随时拿来使用.而直接用SQL语句,还要有预编译的过程.使用存储过程和视图的确是占用了服务器的内存,但是会使你程序的效率提高. 2.另外,我的项目一次提交可能要执行六七百次查询,这样页面就打开很慢,除了连接池外还有没有好的优化性能的方法?存储过程能解决这个问题吗?(并发数不超过10)答:一次提交要执行六七百次查询不算多,对于这样的情况一个很简单的处理方法就是为你的表建立索引,为查询条件设置索引,即使是5万以上的数据查询起来也是0秒.其次是安全性,建议你在存储过程中加入事务处理,避免因为外界影响导致数据丢失的BUG.