2012年4月17日

摘要: -- 按照时间条件declare-- Local variables herev_stat VARCHAR2(100) := 'to_date(''2011-12-28'',''yyyy-mm-dd'')';cursor mycur isselect 'DELETE FROM ' || table_name || ' where stat_time < ' || v_stat || ';' gofrom user_tables;tableinfo VARCHAR 阅读全文
posted @ 2012-04-17 14:56 游客远 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 公司的oracle服务器上有多个用户,每个用户有一些相同的表。由于表的数据量比较大,这些表每月都要增加表空间和表分区。为了方便处理,就写了一个计划任务自动处理分区和空间。添加/删除表分区需要相应的权限 我们知道,用户拥有的role权限在存储过程是不可用的。遇到这种情况,我们一般需要显式授权,如grant create table to usera;但这种方法太麻烦,有时候可能需要进行非常多的授权才能执行存储过程,实际上,oracle给我们提供了在存储过程中使用role权限的方法:修改存储过程,加入Authid Current_User时存储过程可以使用role权限 1 -- 自动管理分区程序. 阅读全文
posted @ 2012-04-17 14:49 游客远 阅读(512) 评论(0) 推荐(0) 编辑
摘要: 1.隐式转换导致索引失效.这一点应当引起重视.也是开发中经常会犯的错误.由于表的字段tu_mdn定义为varchar2(20),但在查询时把该字段作为number类型以where条件传给Oracle,这样会导致索引失效.错误的例子:select * from test where tu_mdn=13333333333;正确的例子:select * from test where tu_mdn='13333333333';2. 对索引列进行运算导致索引失效,我所指的对索引列进行运算包括(+,-,*,/,! 等)错误的例子:select * from test where id-1 阅读全文
posted @ 2012-04-17 13:42 游客远 阅读(225) 评论(0) 推荐(0) 编辑

导航

点击右上角即可分享
微信分享提示