我不赞成。
1:有触发器会大大降低新增删除的速度
2:新增你要写trigger,删除你也要写trigger,更新你还要写trigger。维护麻烦!你写trigger是为了查询方便,我觉得你可以写成视图来做。
如果你的版本是oracle9i以上的话,你可以做成物化视图,那样更简单。
查许也很方便。
1:有触发器会大大降低新增删除的速度
2:新增你要写trigger,删除你也要写trigger,更新你还要写trigger。维护麻烦!你写trigger是为了查询方便,我觉得你可以写成视图来做。
如果你的版本是oracle9i以上的话,你可以做成物化视图,那样更简单。
查许也很方便。
解决方案 »
- ORA-01280: Fatal LogMiner Error.
- 求教关于分组合并的SQL语句
- 求助一段slq!!!好心人帮帮忙阿!
- (急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急)
- 存储过程执行后不出错,但表中也未插入数据,是何原因?
- 我的存储过程代码什么错也没有可如何看到结果????????
- oracle 小时只能是12小时制吗 ?
- 各位高手看过来。我如何写这么个简单的SQL语句?
- 存储过程如何加密,解密
- 如何把Oracle 11g导出的数据库导入到12c里面?!duang~~~
- 就是这样的问题,帮帮我
- ORA-01089:immediate shutdown in progress-no operations are permitted!
1,用户输入的分别存放在临时表里,FLAG里不包括HJ*字样,所以触发器执行操作
2,第一步执行插入记录操作,又触发了触发器,但FLAG里包括HJ*字样,所以触发器不执行操作,
3,如此循环,ok!
2.你在触发器里是无法查询触发表的,不知你如何得到合计,还是在程序里处理比较好。
建视图可实现我的目的吗?请高手细说来....
1 23 2000 工业 14 2.3 23_2000
2 23 2000 农业 36 3.74 23_20004 24 2000 地表水 20 2.4 24_2000
5 24 2000 地下水 10 3.2 24_2000现在问题是我表里没有那两条记录,我用什么方法把它们插进去呢?其值就是每条合计上面的N条记录值的和。越想越糊涂~~~~~~~~~~~能实现吗?(越来越怀疑可行性了!呵呵)
6 24 2000 合计 30 5.6 24_2000_HJ3是1\2条记合计来的,6是4\5条记录合计来的,用个什么方法能够智能的判断一下呢?是写个触发器插一条就判断一条,还是写个过程什么???迷茫~~~~~
谁合计谁是通过FLAG字段标识的,所以上面语句也要group by FLAG才行
合计表我有了,可将来我查询时怎么能连成我想要的样子呢?每条合计记录显示在不同的位置,
如:
ID ADDV YY KIND Col1 Col2 FLAG
1 23 2000 工业 14 2.3 23_2000
2 23 2000 农业 36 3.74 23_2000
3 23 2000 合计 50 6.04 23_2000_HJ
4 24 2000 地表水 20 2.4 24_2000
5 24 2000 地下水 10 3.2 24_2000
6 24 2000 合计 30 5.6 24_2000_HJ
我1/2/4/5条记录在一张表,3/6在一张表,怎么连呢?
直接建立视图即可。
create or replace view aa_view
select addv,yy,sum(col1) col1,sum(col2) col2 from aa group by addv,yy;这样如果想得到你的结果,可以执行查询:
select addv,yy,kind,col1,col2 from aa
union
select addv,yy,'合计',col1,col2 from aa_view
order by 1,2
这样也可以吧?!
(
select id, ... from yourtable
union all
select 9999999 as id, .... from 合计表
)
order by addv,yy,id
Lastdrop(空杯)的方法有时间我也会试试!
谢谢各位!:)