- 博客(33)
- 资源 (6)
- 收藏
- 关注
转载 【INSERT】逐行提交、批量提交及极限提速方法
在Oracle数据库中,不是提交越频繁越好。恰恰相反,批量提交可以得到更好的性能。这篇文章给大家简单展示一下在Oracle数据库中逐行提交于批量提交两者之间的性能差别。最后再给出一种可以极大改变性能的方法。1.创建表t_ref,并初始化880992条数据,用于后面的实验。sec@ora10g> create table t_ref as select * from all_object
2015-03-03 10:02:51 535
原创 Oracle 利用rowid快速删除大表中部分数据
问题: 我们在负责数据仓库的时候,都会有一个中间表(ODS层)来存放部分粒度很细的数据,虽然中间表不是归档表,但是由于每日的业务数据量庞大,每个中间表也会存放有几千万条数据,业务时间跨度达到一个月。而且业务数据提交的是不会停止的,因此,我们在对中间表进行数据更新的时候都会先删除再插入数据,那么问题来了:如何才能快速的删除大表的部分数据。方案: 利用Oracle自带的伪列ROWID进
2015-03-03 09:43:00 2892
转载 https原理及tomcat配置https方法
一、 什么是HTTPS在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。SSL目前的版本是3.
2015-02-07 09:56:26 323
转载 导入导出 Oracle 分区表数据
--**************************** -- 导入导出 Oracle 分区表数据 --**************************** 导入导入Oracle 分区表数据是Oracle DBA 经常完成的任务之一。分区表的导入导出同样普通表的导入导出方式,只不过导入导出需要考 虑到分区的特殊性,如分区索引,将分区迁移到普通表,或使
2015-01-28 13:00:02 658
转载 exp/imp与expdp/impdp区别
在平常备库和数据库迁移的时候,当遇到大的数据库的时候在用exp的时候往往是需要好几个小时,耗费大量时间。oracle10g以后可以用expdp来导出数据库花费的时间要远小于exp花费的时间,而且文件也要小很多。 1.使用expdp要先在数据库中创建directory,并给相应的用户read,write权限.SQL>create dexp和empdp的区别irectory dm
2015-01-27 11:21:42 278
转载 嵌入式软件工程师面试题
嵌入式软件工程师面试题预处理器(Preprocessor)1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将
2015-01-25 16:34:12 640
原创 重要的C语言函数
1、将一个链表逆序LinkList *reverse(LinkList *head){ LinkList *p1,*p2 = NULL,*p3 = NULL; if(head == NULL || head->next == NULL) return head; p1 = head->next; while(p1!=NULL) { p3 = p1->nex
2015-01-25 16:32:18 344
转载 数据在计算机中的存储——原码、反码、补码
为什么c语言中int的表示范围是-32768~32767这得从二进制的原码说起:如果以最高位为符号位,二进制原码最大为0111111111111111=2的15次方减1=32767最小为1111111111111111=-2的15次方减1=-32767此时0有两种表示方法,即正0和负0:0000000000000000=1000000000000000=0所以,二进制原码表
2015-01-25 16:21:20 1069
转载 堆 和 栈的 区别(经典)
转载一篇理解堆和栈区别的好文章堆和栈的区别 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能
2015-01-25 16:18:23 263
原创 Oracle的备份与恢复
Oralce数据库备份与恢复方法:冷备份(完全备份,安全完整)导出/导出备份(通过EXP/IMP完成,部分备份)热备份(归档模式下备份)(一)冷备份冷备份是一种物理备份方式冷备份的备份对象是整个数据库冷备份的数据库必须是关闭状态冷备份使用操作系统命令1、备份对象:数据文件,控制文件,参数文件,口令文件,重做日志文件。2、冷备份步骤:
2015-01-25 16:15:09 331
转载 Java中的进制转换方法
十进制转成十六进制:Integer.toHexString(int i)十进制转成八进制Integer.toOctalString(int i)十进制转成二进制Integer.toBinaryString(int i)十六进制转成十进制Integer.valueOf("FFFF",16).toString()八进制转成十进制Integer.valueOf("87
2015-01-25 16:12:56 368
原创 ETL的过程原理和数据仓库建设
1.引言数据仓库建设中的ETL(Extract, Transform, Load)是数据抽取、转换和装载到模型的过程,整个过程基本是通过控制用SQL语句编写的存储过程和函数的方式来实现对数据的直接操作,SQL语句的效率将直接影响到数据仓库后台的性能。 目前,国内的大中型企业基本都具有四年以上计算机信息系统应用经验,积累了大量可分析的业务数据,这些信息系统中的数据需要通过搭建
2015-01-25 16:09:44 1009
转载 ExecutorService线程池
ExecutorService 建立多线程的步骤:1。定义线程类class Handler implements Runnable{}2。建立ExecutorService线程池ExecutorService executorService = Executors.newCachedThreadPool();或者
2015-01-25 16:02:07 296
转载 Java枚举类型的用法
1. 在J2SE5.0中要定义枚举类型是使用enum关键词,枚举类型主要提供一些常数。如下列代码定义了Action枚举类型:
2014-10-30 10:18:14 422
原创 编译制作hadoop 2.4.1 Eclipse插件,在线调试运行MapReduce程序
环境简介:hadoop 2.4.1 运行在linux虚拟机当中
2014-09-09 15:26:23 1975
原创 ORA-00257:archive error. Connect internal only, until freed解决方案
今天登陆生产环境数据库,报了如下错误:ORA-00257:archive error. Connect internal only, until freed初步分析是归档日志满了,排查解决方案如下:
2014-08-15 09:41:41 1188
转载 SqlHelper工具类
在网上转载的SqlHelper工具类,可以放到项目里直接用,使用方法也很简单,源码附上package com.hsp.utils;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.
2014-03-23 20:35:10 562
原创 使用Oracle内建功能对ETL构建
在Oracle9i中引入了外部表(External Table)的概念,通过访问驱动程序ORACLE_LOADER可以对数据库之外的文件进行只读的SQL查询。在Oracle10g中,提供了第二个访问驱动程序ORACLE_DATAPUMP,允许用户对外部表进行写操作,写出的结果文件以特定的结构保存并允许DPAPI访问,即该结果文件可以被加载到另一个数据库中。同时,新的访问驱动程序也支持列对象的投影。
2014-03-19 11:49:50 448
转载 Java数据操作,常用算法
[java] view plaincopypackage com.luang.util.common; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; import java
2014-02-14 10:22:22 363
原创 在Oracle中调用Java Source 的方法
通常有三种方法来创建java存储过程。一、手动编写Java存储过程/函数 利用SQL脚本代码,手动编写可供Oracle调用的Java存储过程或函数,和普通的存储过程/函数创建方法类似,以存储过程为例,语法如下:CREATE OR REPLACE AND COMPILE JAVA SOURCE NAMED java_soure_name AS示例:创建一个简单的Hell
2013-11-27 15:59:32 1953
原创 PL/SQL中类似break 和 continue的实现
在如C/C++,Java编程语言的循环控制结构中,都有break和continue关键字可以灵活的控制循环体如何结束和跳出本次循环。但是PL/SQL本身是不具备这种关键字的,但是却可以利用一些方法实现类似的功能。PL/SQL中的循环控制结构常用的有如下几种:LOOP sql statement...EXIT WHEN CONDITION ... END LOOP;WHILE CON
2013-11-27 09:52:23 1211
转载 FileInputStream/FileOutputStream的应用
这是一对继承于InputStream和OutputStream的类,用于本地文件读写(二进制格式读写并且是顺序读写,读和写要分别创建出不同的文件流对象);本地文件读写编程的基本过程为: ① 生成文件流对象(对文件读操作时应该为FileInputStream类,而文件写应该为FileOutputStream类);② 调用FileInputStream或FileOutputSt
2013-11-26 15:39:17 327
转载 Oracle PL/SQL 调用Java Source
JAVA Source 有的时候,我们需要在Oracle的Prodedure、Function中调用JAVA代码来实现功能,比方说下面的这个例子,调用JAVA代码来实现大小写金额的转换,如果这个代码用PL实现,难度还是有的,那如果我们先写成JAVA代码,然后通过调用,来实现,还是可以的。创建[sql] view plaincopy
2013-11-25 17:43:26 977
原创 利用Oracle分析函数LAG求时间段内的本期、同比、环比值
with time_dim as (select add_months(add_months(date'2013-7-1',-12),(rownum-1)) dim_month from dual connect by level <=months_between(date'2014-1-1',date'2012-7-7')+2)select t.dim_month, t.
2013-11-14 13:07:18 882
原创 Java 中的 hashCode 和 equals 方法
使用hashCode()和equals()hashCode()和equals()定义在Object类中,这个类是所有java类的基类,所以所有的java类都继承这两个方法。hashCode()方法被用来获取给定对象的唯一整数。这个整数被用来确定对象被存储在HashTable类似的结构中的位置。默认的,Object类的hashCode()方法返回这个对象存储的内存地址的编号。如果
2013-10-12 11:55:08 393
原创 利用EXCHANGE PARTITION将未分区表组合成分区表
今天遇到一个问题,就是需要建立一个分区表,按照时间范围分区。但是问题是,这个事实表之前就已经存在了,而且里面也有了大量的数据,此时将该未分区表变化为分区表就有了如下几个办法:建立一个表结构相同的分区表,在将源表中的数据插入到分区表中,根据分区裁剪功能,满足条件记录会自动的插入到分区当中。利用9i开始引入的一个机制——在线重定义(DBMS_REDEFINITION包),但是此时要求源表一
2013-10-10 16:16:23 459
原创 Oracle DBMS_JOB.submmit使用
在创建Oracle调度的时候,我们经常使用Oralce系统自带的调度包DBMS_JOB,虽然在10g开始有了DBMS_SCHEDULER,但是这是对原有的增强,基本的方法还是差不多的。用法DEMO:DBMS_JOB.SUBMIT(:jobno, --job号 'your_procedure;', --要执行的过程
2013-10-09 17:13:31 532
转载 动态SQL编程讨论与示例
PL/SQL中使用动态SQL编程在PL/SQL程序设计过程中,会遇到很多必须使用动态sql的地方,Oracle系统所提供的DMBS_SQL包可以帮助你解决问题。(一)介绍DBMS_SQL系统包提供了很多函数及过程,现在简要阐述其中使用频率较高的几种:function open_cursor:打开一个动态游标,并返回一个整型;procedure close_curso
2013-10-09 15:38:32 594
转载 物化视图日志结构
物化视图的快速刷新要求基本必须建立物化视图日志,这篇文章简单描述一下物化视图日志中各个字段的含义和用途。物化视图日志的名称为MLOG$_后面跟基表的名称,如果表名的长度超过20位,则只取前20位,当截短后出现名称重复时,Oracle会自动在物化视图日志名称后面加上数字作为序号。物化视图日志在建立时有多种选项:可以指定为ROWID、PRIMARY KEY和OBJECT ID几种类型,
2013-10-09 15:30:49 383
原创 创建Fast Refresh的materialized view时的问题
今天帮人解决了一个物化视图快速刷新的问题,简单记录一下解决方法。问题倒是不复杂,就是一个普通的聚集物化视图的快速刷新问题,下面通过一个例子模拟一下:SQL> CREATE TABLE T AS SELECT * FROM DBA_FREE_SPACE;表已创建。SQL> CREATE MATERIALIZED VIEW LOG ON T WITH ROWID, SEQUENCE (
2013-10-09 15:14:55 679
原创 iOS 实现编辑文本框时视图上移
TextField控件委托实现:- (void)textFieldDidBeginEditing:(UITextField *)textField{ [self animateTextField: textField up: YES];}- (void)textFieldDidEndEditing:(UITextField *)textField{ [self
2013-10-09 15:10:12 524
转载 (转)Oracle物化视图
一、物化视图的一般用法物化视图是一种特殊的物理表,“物化”(Materialized)视图是相对普通视图而言的。普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图SQL语句的查询。这样对整体查询性能的提高,并没有实质上的好处。1、物化视图的类型ON DEMAND、ON COMMIT。二者的区别在于刷新方法的不同,ON DEMAND顾名思义,仅在该物化视图
2013-04-16 11:15:25 387
WinRAR 4.2版本 + 64位破解版
2013-11-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人