6、什么是存储过程?什么是游标,何时使用、何时不用游标?

哎呀,存储过程和运行程序,当我第一次接触数据库时,我很困惑。

我记得2 007 年左右,我在北京的一家小公司做开发人员。
我第一次制定会议程序。
老板让我把复杂的逻辑问题写成存储的形式,说这样以后调用更方便,省事。
我当时很困惑。
SQL语句本来就很复杂,还要包装编译,听起来很复杂。
我写的时候,每次调用这个store的时候,我发现数据库运行速度快了很多,而且代码看起来干净了很多。

你这个帖子,真让我头疼。
1 0年前,在项目中,我需要大量的数据,大约有几十万条。
起初我想使用游标并按顺序处理它们。
结果,在运行时,服务器卡住并且内存耗尽。
那一幕,啧啧,吓死我了。
后来我赶紧换了临时表,问题就解决了。
这时候我彻底明白了,利用帖子并不容易,尤其是信息量很大的时候。
效率确实很差。
稍后我还会概述,在处理数据时,我会尝试使用基于集合的方法,这是非常有效的,而且代码也很简单。
Runners和临时表是最后的手段,能用就不要使用。

总的来说,存储过程和游标都是数据库操作的工具,但是也要看使用者的情况。
存储过程适合封装复杂的逻辑,提高代码的可维护性和数据库的执行效率。
Runner适用于复杂的数据处理操作,例如逐行处理数据或返回多条数据。
但跑步者的效率较低。
当数据量较大时,最好使用set方法或者临时表来恢复游标。

oracle中的存储过程,有什么作用,以及怎么在代码中使用?

例如,上周三下午三点,我在办公室调试一份报表,但数据一直不匹配。
经过一段时间的挣扎,我发现SQL语句嵌套了太多次,每次运行都要等一分钟。
这时候我想起了老王之前说的,针对这种类型的查询单独写一个存储过程,编译一次,后面直接调用。
我很快在 Oracle 数据库中创建了一个新的 SP,并包含了该复杂的 SQL 语句。
果然,运行一次只需要十秒。
传入参数,直接输出结果。
可以轻松检索字符串类型。
proc.prepareCall 的代码是从开发文档中复制的。
那里的 P_Isinblacklist 看起来像是一个旧的界面。
等等,还有一件事。
包里好像有两个函数,我忘了删除它们。
突然想到,Java中也可以适配存储过程吗?