- 浏览: 26253 次
- 性别:
- 来自: 长沙
最新评论
-
去你姑:
都是单例模式?唉,我了解的太肤浅了
java单例模式实现方法 -
wushuangyan26:
wangym 写道若单例在构造时需要参数,请教如何写最好?
...
java单例模式实现方法 -
wangym:
若单例在构造时需要参数,请教如何写最好?
java单例模式实现方法 -
yuhui136126:
from dual union all select ''te ...
拼接查询sql中指定列的结果集 -
litingkb:
...
oracle redo
文章列表
单例(Singleton)是指只实例化一次的类。
一、如何实现单例
单例类常用的实现方式有以下几种
1、饿汉式:类载入时创建单例实例
1.1、公开的静态常量单例对象
/**
* *
* <p>
* *
* <h6>当类StaticFinalSingleton类被实例化时,有且仅有一个StaticFinalSingleton实例存在 *
* (除非客户端通过类反射机制调用该私有的构造方法,否则外部无法改变单例)</h6> * * @Copyright 2011 *
...
public class DynamicParameterTest {
/**
* <h3>动态接收参数方法</h3>
*
* @param Object
* ... args动态参数数组
*/
static void parameterMethod(Object... args) {
System.out.println("start parameterMethod(Object... args)");
if (args == null || args.length == ...
查看oracle的sql执行计划主要有以下几种方式
1 在线查看执行计划
1.1 explain plan for
1.1.1 规则
在sql窗口或sql*plus终端
1、首先执行explain plan for [目标sql语句] ;取得计划解释
1 使用dbms_lock包控制串行
在pl/sql代码块中,有些操作代码块不能被多个会话同时进行执行,比如生成中间数据表(如先清除,后插入中间数据),
并且此表的数据在后续业务处理总需要使用,如果此部分代码块被另个会话调用,则会造成中间数据表的数据在同一个会话中不完整。
因此当有类似这样的需求时,就可能需要在pl/sql块中使用dbms_lock包控制来控制此部分代码块只能进行串行调用。
1.1 锁定原理
1.1.1 用户锁概念
1、通过dbms_lock获取的锁类型可以看成是
1 EXECUTE IMMEDIATE
oracle中DBMS_SQL package包和EXECUTE IMMEDIATE都可以用来解析并执行动态SQL语句或非运行时创建的PL/SQL块,相比较而言,EXECUTE IMMEDIATE使用较简单,能够满足较常用的需要。
1.1 语法
EXECUTE IMMEDIATE v_sql [BULK COLLECT INTO 或INTO 返回值变量] [INTO 入参 1,.., out
拼接查询sql中指定列的结果集
- 博客分类:
- oracle/开发
函数适用于:需要将指定查询sql中的某列拼接成以指定字符分隔连接的字符串。
不足:因函数的返回值为varchar2,且通常拼接得到的字符串会用于查询sql(因用在SQL中,不能大于varchar2的4000个字符限制)中,因此限制了返回长度小于等于4000
CREATE OR REPLACE FUNCTION f_con_colunn_set(p_sql IN VARCHAR2,
--传入的sql语句
p_c ...
Linux下安装配置Oracle
1环境准备
1.1.linux系统安装
版本
RHAS4:RedHat Enterprise Linux Advance Server 4.0
1.2.检查环境
Hard Disk Space
[root@localhost /]#df –h
(目标安装目录) >2 G +1G(软件包源目录)
/tmp >400M
Mem>1G,swap>1G
[root@localhost /]#cat /proc/meminfo|grep Total
依赖软件版本
名称 最低版本 查询命 ...
这里的oracle任务指oracle过程或一系列业务操作集合简称,
如果任务执行时间过长,通常需要从系统后台执行连接数据库,执行指定的oracle任务
1、新建shell脚本execsql.sh
#!/bin/sh
#连接目标数据库
$ORACLE_HOME/bin/sqlplus -s username/passwd@service_name <<EOF
#添加具体的任务,这里暂用proc_exec过程代替
exec proc_exec;
EOF
2、赋予执行权限
chmod 755 execsql.sh
3、后台执行
执行命令如下:
nohu ...
1.1 redo
重做日志文件(redo log file)对Oracle数据库来说至关重要,它们是数据库的事务日志。Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日志文件。这两类重做日 ...
作用:oracle内置函数wmsys.wm_concat用来以逗号分隔连接列的值
1)测试sql语句如下:
SELECT id, wmsys.wm_concat(val) val
FROM (SELECT 1 id, 'a' val
FROM dual
UNION ALL
SELECT 2 id, 't' val
FROM dual
UNION ALL
SELECT 1 id, 'd' val
FROM dual
UNION ...