
DB
zhaohuihua
这个作者很懒,什么都没留下…
展开
-
如何并发每次取前100条不同记录
有一个表中的数据需要每月更新,数据量近百万,考虑由10台服务器分摊并分批进行更新这就需要能够查询一批记录(如100行)并同时修改这批记录的更新状态,以免被正在更新的数据被其他服务器取到加行级锁,查询到记录后再遍历结果集更新状态?for update wait 10;这样如果某台服务器锁定记录,直到更新状态并提交这段时间,其他所有服务器都得等待,只有这台服务器释放后其他服务器才能加锁进行更新操作原创 2010-05-24 08:41:00 · 1534 阅读 · 1 评论 -
点点滴滴(Oracle)
insert into select * into t_dest from t_src; -- 要求目标表不存在 insert into t_dest(a, b) select a, b from t_src; -- 要求目标表已存在动态SQL execute immediate 'select ' || sq_serialnum || '.nextval原创 2010-05-22 17:13:00 · 776 阅读 · 0 评论 -
清理过期数据的存储过程
create or replace procedure p_clear_expired_data-- 根据指定的表名和字段名清理过期数据, 可配置为job运行-- author: zhaohuihua( i_tablename in varchar2, -- 表名 i_timefield in varchar2, -- 时间字段名原创 2014-02-22 15:23:29 · 1161 阅读 · 0 评论 -
oracle拆分字符串
create or replace type array_string is table of varchar2(2000);/ create or replace function f_split_string-- 拆分字符串---- author: zhaohuihua( i_src in varchar2, -- 待拆分的字符串原创 2014-02-22 15:24:59 · 664 阅读 · 0 评论 -
建表SQL
create table t_clicklog-- 用户点击日志表---- author: zhaohuihua( id number(20) not null, time date default sysdate not null, modulepath varchar2(500) not null,原创 2014-02-22 15:26:42 · 495 阅读 · 0 评论 -
统计所有表的记录行数
declare cnt number;begin dbms_output.put_line(rpad('table_name',35)||rpad('records',20)); dbms_output.put_line(rpad('---------------',35)||rpad('--------------',20) ); for rec in(sele原创 2014-02-22 15:39:07 · 648 阅读 · 0 评论