存储过程复杂
完全可行的,银行系统的不少业务都是利用存储过程的。
只要程序能处理到,其实用那种方式来实现都不是很重要的了。
不过考虑到可维护性,一般都不建议把复杂逻辑交给存储过程了。
⑵ 如何解决执行sql存储过程(大数据量复杂
插入是sql会把数据存到inserted(我不确定对不对啊)表里面,是在内存中的,当插入到你要插入的表了之后才会删除干才插入到inserted表里的数据,是需要消耗内存的。
消耗的内存都是一样的,只是一个是预编译的(存储过程),一个是即时的。使用存储过程效率要高一些。
⑶ sql复杂的存储过程写法
create
proc
proc1
@b1
int,@b2
int,@id
int
output
as
declare
@k1
int,@k2
int,@k3
varchar(20)
begin
exec
proc2
@k1,@k2,@k3
output
--@k3输出参数
就是你的tablename
select
@id=id
from
@k3
where
b1=@b1
and
b2=@b2
end
你提供的不详细
我只能写个思路给你。。
调用proc1存储过程先调用proc2传出一个表名
然后根据传入的参数输出这个表名的id字段。。
⑷ 遇到的许多oracle存储过程实在是太复杂了,有没有帮助读代码的技巧心得呀
如果是初学的话,建议先跳过标准功能中的存储过程,知道怎么应用就是了,从基础开始 ,ORACLE的标准过程模块化的划分非常细致,就非常方便应用和学习 在你对语法环境、常用函数、业务规范熟悉之后,再来慢慢研究标准的存储过程也不迟。不过估计那个时候你也不会有兴趣去关心这个了,除非你要自己开发数据库
⑸ SQL语句高手进,关于一个比较复杂的存储过程
题目所述功能要求,可以用一句SQL语句实现,当然如果要传递一些参数地滤的话还是需要存储过程.
语句思路:
1.按dwbh,时间汇总个人表中金额
2.按dwbh,时间汇总单位表中金额
3.将以上两个汇总结果进行关联,关联的条件是相同dwbh、相同时间情况下金额不同的记录.即可以实现金额不相同的数据筛选出来.
"--"符号为注解,以下语句中的中文字段为假想字段,可以替换为实际字段.关键在于理解语句思路.语句如下:
select
GR.dwbh
,
GR.个人表交费时间
as
时间,GR.个人交费总金额,DW.单位交费总金额,(GR.个人交费总金额
-
DW.单位交费总金额)
as
差额
from
(
select
dwbh,个人表交费时间,sum(交费金额)
as
个人交费总金额
--子查询汇总出个人交费表中的单位、时间、金额,并取别名为GR嵌入From子句中
from
bcd
group
by
dwbh,交费时间
)
as
GR
inner
join
--
将上下两个子查询进行内联
(
select
dwbh,单位表交费时间,sum(交费金额)
as
单位交费总金额
--子查询汇总出单位交费表中的单位、时间、金额,并取别名为DW嵌入From子句中
from
abc
groub
by
dwbh,交费时间
)
as
DW
on
GR.dwbh
=
DW.dwbh
and
GR.个人表交费时间
=
DW.单位表交费时间
and
GR.个人交费总金额
<>
DW.单位交费总金额
--两个子查询内联的条件是单位编号相同,时间相同,但金额不同的记录
⑹ SQL存储过程怎么写这样套复杂的写法.
create proc proc1
@B1 int,@B2 int,@ID int output
as
declare @K1 int,@K2 int,@K3 varchar(20)
begin
exec proc2 @K1,@K2,@K3 output --@K3输出参数 就是你的tablename
select @ID=ID from @K3 where B1=@B1 and B2=@B2
end
你提供的不详细 我只能写个思路给你。。 调用proc1存储过程先调用proc2传出一个表名 然后根据传入的参数输出这个表名的ID字段。。
⑺ 怎么才能写出很复杂的存储过程来就像试图一样勾勾连连就可以了、有这样写存储过程的办法吗
那样的存储过程不推荐~~~
我曾经join 过9个表,大概400多行的存储过程, DB2得。
发现只要超过4个表,就很慢,最后采取了很多措施优化。
存储过程取决于你的业务需求,尽量不要太复杂,后期别人也不容易维护,也不容易看懂。
⑻ 请教大师们,很多人把存储过程写的很复杂,这样比在程序里判断要好吗
stored procere可以在数据库里缓存的,如果你在程序里判断的话,要多好多在数据库那边的通信、parsing、编译什么的。
另外,应该把尽量少的信息给客户端的程序,这样才安全。
还有一个原因,如果有好几个程序同时都需要用这个过程的话,当你修改或者升级的时候,只有一个stored procere要比好几个程序省劲的多。
⑼ 写的存储过程,老师嫌简单,怎么办,怎么去想一个复杂的存储过程,就是 一个存储过程 可以达到一页的
其实在存储过程中,可以写得详细点,如存储过程中有用到表,可以加先判断表是否存在,如果存在则删除表再创建表这样的判断,这样的存储过程就比较严谨