`
liubin2010
  • 浏览: 303197 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

什么时间使用存储过程

阅读更多
                   存储过程                      中间件
数据库迁移             难                            易
编写生产率             低                            高
调优能力               强                            弱
逻辑重用               异构平台,强                   异构平台,弱
大数据汇总             易                            难
性能                   高                            低
触发约束机制           强                            弱

储存过程好处:
1. 适合监管,适合调用 --- 通过存储过程暴露业务过程,适合异构平台重用业务逻辑,这在企业开发中也很普遍,需要从许多数据库汇总业务数据, 每个业务数据库暴露出其可用的存储过程,远比暴露出表结构强. 举个例子: QA部门的客服数据是java 系统, 物料部门的BOM是cobol, 你如何去查询每种物料的故障率??? 这种在业务发展中不段出现的跨数据库查询, 用存储过程是个相当不错的方法,远比web service好用
2. 性能比在中间层快,适合调优 --- 尤其是在长时间的报表汇总中, 存储过程调优远比什么ejb,hibernate强悍,可用工具也多.
3. 大数据量汇总,中间件根本无法胜任.
所以,我仍然坚持,对于中小型企业系统,我只考虑哪些需要实时数据,客户对响应时间要求较高,而又牵涉的大量数据的场景,才会使用存储过程。其他的,还是用java好了。
存储过程也绝不是一无是处,在进行数据汇总、聚合等操作时存储过程时必然的选择,但复杂逻辑还是交给更适合的其他语言实现吧。也就是说不涉及业务逻辑的、单纯数据的操作应交给存储过程。

分享到:
评论

相关推荐

    Visual C++源代码 130 如何使用存储过程查询时间段数据

    Visual C++源代码 130 如何使用存储过程查询时间段数据Visual C++源代码 130 如何使用存储过程查询时间段数据Visual C++源代码 130 如何使用存储过程查询时间段数据Visual C++源代码 130 如何使用存储过程查询时间段...

    什么时候使用存储过程比较适合.pdf

    。。。

    什么时候使用存储过程比较适合.docx

    。。。

    MySQL数据库:存储过程的创建1.pptx

    使用存储过程可以完成所有数据库操作,并可通过编程方式控制上述操作对数据库信息访问的权限。 创建存储过程 创建存储过程可以使用CREATE PROCEDURE语句 语法格式: CREATE PROCEDURE sp_name ([proc_parameter[,......

    SQL Server中存储过程比直接运行SQL语句慢的原因

    1. 存储过程只在创造时进行编译即可,以后每次执行存储过程都不需再重新编译,而我们通常使用的SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。 2. 经常会遇到复杂的业务逻辑和对数据库的...

    入门存储过程

    存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可。在Oracle中,若干个有联系的过程可以组合在一起构成程序包。 使用存储过程有以下的优点: ...

    存储过程自动生成工具

    3、 让会写存储过程的测试人员,短时间内完成存储过程编写。 4、 可生成现行业主流的不同数据库类型的存储过程。 5、 添加的数据符合项目真实客户环境,数据类型和长度和任意定制化。 6、 保证添加的数据绝对正确、...

    MySQL存储过程综述及如何使用Navicat创建存储过程

    一、什么是MySQL存储过程?   在大型项目中,有时候需要重复执行能够完成特定功能的SQL语句集,而MySQL为我们提供了存储过程的概念,存储过程是数据库中的一个重要对象,它是存储在数据库中的一组完成特定功能的...

    PLSQL中存储过程的建立,导出,导入,使用

    PLSQL中存储过程的建立,导出,导入,加入图示详细描述

    SQL存储过程

    当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。 Ø 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在...

    游标的使用和存储过程的建立

    游标的使用和存储过程的建立。使用游标查询scott用户下的emp表,查询出工资小于工号为7698的员工工资的所有员工信息。使用scott用户下的dept表。创建一存储过程。使用scott用户下的emp表,创建程序包,包中包含...

    oracle存储过程+日期+定时任务Job

    oracle存储过程+日期+定时任务Job oracle存储过程+日期+定时任务Job oracle存储过程+日期+定时任务Job

    存储过程中时间的处理

    存储过程中需要设计到数据中时间的操作问题,如定时调用了,还有一些其他问题。

    MySQL创建存储过程批量插入10万条数据

    MySQL创建存储过程批量插入10万条数据 存储过程 1、首先防止主键冲突,我们清空表。 TRUNCATE table A_student; 2、编写存储过程 delimiter ‘$’; CREATE PROCEDURE batchInsert(in args int) BEGIN declare i int ...

    oracle记录存储过程日志的方法

    本包用于记录存储过程里面的日志,将日志信息写入日志表(mylog)。可以记录日志时间、过程名称、过程里面记录日志的行数、参数值。如果在异常处理部分记录日志,还可以记录异常代码、异常原因、异常产生的行数。 本人...

    Mysql、SqlServer、SysBase存储过程自动生成工具

    3、 让会写存储过程的测试人员,短时间内完成存储过程编写。 4、 可生成现行业主流的不同数据库类型的存储过程。 5、 添加的数据符合项目真实客户环境,数据类型和长度和任意定制化。 7、 后期可任意定制化项目的...

    sql存储过程自动备份指定时间内A数据库表数据到B数据库表

    sql 存储过程 自动备份指定时间内A数据库表数据到B数据库表

    存储过程注意点

    存储过程:当存储过程里开了事务的时候,写在事务里的sql 语句在插入或者更新的时候有时会遇到唯一键的冲突,有一次在使用连接临时表更新的时候,遇到了冲突,但是声明异常的语句并没有检测到,然后没有回滚,事务也...

    存储过程不支持数组类型的变通办法

     用ASP开发网上商城时是使用的Access数据库,当时并不知道Access有存储过程,更准确的说法是:那时候根本就不知道什么是存储过程。所以在做批量删除是使用的拼SQL语句的做法  Delete SystemLog Where ID = 1 or ID...

    oracle 存储过程中某入参是逗号分隔,并且参数要使用在in过滤语句中

    oracle存储过程中入参是逗号分隔,并且参数要使用在in过滤语句中查询数据。处理的方法与实现

Global site tag (gtag.js) - Google Analytics