社区
Web 开发
帖子详情
java程序中写sql语句和存储过程 哪个效率高些 ?
javajdbc
2008-03-13 02:38:41
在编写多层模式时候,用java程序调用sql语句好呢?还是用java调用数据库中的存储过程好呢
?
哪个效率更高一些 ?
?
...全文
1647
19
打赏
收藏
java程序中写sql语句和存储过程 哪个效率高些 ?
在编写多层模式时候,用java程序调用sql语句好呢?还是用java调用数据库中的存储过程好呢? 哪个效率更高一些 ??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wanglilin
2011-10-10
打赏
举报
回复
看来还是数据量小的情况下,直接写在程序里了。
gobeyond2000
2008-04-14
打赏
举报
回复
[Quote=引用 15 楼 sky_ccy 的回复:]
我 个人觉得是这样,于数据库的数据交互量有关系,,
小的系统,,在很短的一段时间内只有几十,几百条记录交互的话,用sql那样核算一点了,,比较简单吗,对吧
但像银行了,大型的商用系统了,,很短的一段时间内交互量要有几万,十万呀,那当然要用存储过程核算一点,执行的效力高一点
[/Quote]
大型系统在做海量查询时有其他解决方案。从使用临时表到使用全局索引,在数据库端会有许多特殊处理。而不是使用存储过程解决的。使用存储过程解决的问题往往是纯数据库问题。
gobeyond2000
2008-04-14
打赏
举报
回复
所以建议你在使用存储过程时通盘考虑。
如果你只是编写一个小程序,数据量不大,使用范围不广。建议你采用存储过程。
如果你制作中型程序,而且时间紧迫,没有更多时间考虑时,使用存储过程也是一条快速开发的道路。但是,一旦有时间,还是建议你将存储过程中的内容解偶出来,放在程序中。因为存储过程往往会写入一些业务逻辑,这样做显然和数据库高度耦合,不利于扩展和移植。
制作大型程序时,使用存储过程很谨慎,非到必要时,不使用。
gobeyond2000
2008-04-14
打赏
举报
回复
当然是存储过程更快。
存储过程在数据库内部编译。不需要有任何其他时间开销。
在是通过程序写SQL还是使用存储过程的问题上。速度只是一方面。
另一方面是架构上的考虑。
一般.net程序员倾向于使用存储过程,因为vc/vb/c#和SQL Server几乎是无缝连接。而且决大多数情况不存在移植问题。
java程序员则倾向于使用程序采用标准SQL完成数据库查询。
这样做最大的好处就是可移植。后端不管采用任何数据库,前端只需要修改配置文件,几乎不用修改代码。
但是如果使用存储过程,你就需要考虑万一数据库移植怎么办的问题。从sql server移植到oracle或者mysql,所有的存储过程几乎都要重写一遍。
sky_ccy
2008-04-14
打赏
举报
回复
我 个人觉得是这样,于数据库的数据交互量有关系,,
小的系统,,在很短的一段时间内只有几十,几百条记录交互的话,用sql那样核算一点了,,比较简单吗,对吧
但像银行了,大型的商用系统了,,很短的一段时间内交互量要有几万,十万呀,那当然要用存储过程核算一点,执行的效力高一点
xuxiang19840814
2008-04-13
打赏
举报
回复
存储过程运行快,但依赖性高,还是建议使用sql语句
小五五
2008-04-13
打赏
举报
回复
存储过程对数据库类型依赖性太高了。。
Gump09
2008-04-09
打赏
举报
回复
简单的查询就用sql就好了
复杂的批处理用存储过程
BradenCao
2008-04-09
打赏
举报
回复
统计之类比较复杂的应用建议用存储过程
其它尽量还是用ORMapping吧
毕竟是面向对象编程。
阿甘1976
2008-04-09
打赏
举报
回复
我就不赞成!这样做,系统移植性差,存储过程与数据库结合太紧密.
kingdomofhavean
2008-04-09
打赏
举报
回复
存储过程快,做起来麻烦,尤其是调试程序时。在jsp中方便,我觉得差不多。
javajdbc
2008-04-09
打赏
举报
回复
写 sql2000 的写习惯啦,oracle 的都忘了咋写啦
郁闷~~
goodbetterbest
2008-03-13
打赏
举报
回复
存储过程快一些
hyz270
2008-03-13
打赏
举报
回复
存储过程快一些
Squall1009
2008-03-13
打赏
举报
回复
用PreparedStatement的话应该差不多。
数据库一般会帮你缓存执行计划的。
javajdbc
2008-03-13
打赏
举报
回复
也些有道理,有高手没? 给点评下呗 ???
ee4456
2008-03-13
打赏
举报
回复
看你干什么了,是插入还是删除还是更新,是批量的还是单个,如果不是批量操作的话,几乎没什么区别,如果你仅仅是插入一条数据,也在程序中调用存储过程甚至可能会比直接写SQL还慢。。
我是这样感觉的,不知道说的对不
javajdbc
2008-03-13
打赏
举报
回复
我觉得也是 ,把不必要的工作都交给db来做,查询数据本来就是 db的任务嘛。
再说了,如果交给java程序来执行sql语句 ,繁琐且效率底,
认同不 ??
吴冬冬
2008-03-13
打赏
举报
回复
存储过程 因为是预编译的
7天带你玩转Mysql数据库之
SQL语句
您观看课程学习后免费入群领取【超全Python资料包+17本学习电子书】 七年
SQL语句
编写经验。满满的干货! 在网上找了好多SQL数据库的教程,但你还会面临这样的问题:1. 自己写了SQL却不知道对不对。2. 在上线后发现原有的数据内容
SQL语句
执⾏结果没问题, 但是数据变化了以后SQL返回的结果就错误了。3. 稍微复杂⼀点的SQL就不知道该如何写了。4. 看不懂同⾏写的SQL是为什么。5. 不知道索引的原理。6. 不知道怎么加索引能够提⾼查询性能纵观全网的教程都只停留在概念解析的层面,没有深入剖析原理,所以看了那么多的教程,可还是不会写。本教程与其他教程不同带你深入了解原理,让你真正了解什么是
SQL语句
,让你懂得
SQL语句
的编写⽅法。不再为
SQL语句
而烦恼。真正做到面对任何问题能够判断出
SQL语句
是不是能够实现,该怎样实现。
java
生成
sql语句
_
java
生成
SQL语句
代码如下:/** * 动态生成SQ及SQL参数L* @param ve 接收到的消息的CHGLIST* @param paramList MQ消息中的SQL参数* @param t 泛型对象* @param table 数据表* @param list 可执行
SQL语句
集合* @return */public String updateSqlAndParamList(Vector ve,List...
java
程序
员要了解的
sql语句
优化技巧大全
java
程序
员要了解的
sql语句
优化技巧大全
存储过程
优缺点
一.什么是
存储过程
存储过程
,百度百科上是这样解释的,
存储过程
(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定
存储过程
的名字并给出参数(如果该
存储过程
带有参数)来调用
存储过程
。简单的说就是专门干一件事一段
sql语句
。可以由数据库自己去调用,也可以由
java
程序
去调用。在...
java
mysql 动态sql_
Java
下拼接运行动态
SQL语句
Java
拼接动态SQL的一般做法有1、使用动态语句非常多数据库都提供了处理动态SQL的语法,如Oracle的EXECUTE IMMEDIATE语句、MSSQL的EXEC和SP_EXECUTESQL、Mysql的预处理语句等。这些功能让我们在数据库端来处理动态查询提供了极大遍历,但这样的方式仅仅适用于相对简单地动态查询,复杂的情况常常会採用以下的方式。2、使用
存储过程
对于复杂的情况,通常会在
存储过程
...
Web 开发
81,092
社区成员
341,717
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章