自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 最近使用到的函数/概念

row_number() over()lead() over()dba_source视图在PL/SQL中追踪报错 dbms_output.put_line(dbms_utility.format_error_backtrace);or not existsexception too_many_rows留个记号,有空详细补充...

2018-01-30 13:26:06 313

转载 两篇关于Oracle中后台进程中CKPT描述得比较好的文章

http://www.cnblogs.com/czjie/archive/2011/11/21/2258151.html http://space.itpub.net/24005010/viewspace-694408留个记录,改日整理。

2018-01-30 13:21:16 314

原创 记录一次ORA-01722的Bug

问题如下: 错误代码为 ora-01722,无效数字 经排查后是因为有一个字段的数据类型为char(1),存得是”1”和”0”,假设该字段名为A。 我在取where条件时写法:A=1; 规范的写法应该是:A=’1’; 但是据我了解,Oracle是在比较数据时,存在隐式转换的机制 以下是我查资料后得到的说明: “When comparing a character value with

2018-01-16 00:46:05 408

转载 Linux配置ifcfg-eth0的方法

主要经验来源于“http://blog.csdn.net/zhyjunfov/article/details/30064631”这篇文章 结合自己的遭遇 首先确定这个概念 “eth0表示OS第一块网卡” 由于Win10和VirtualBox高版本的不兼容,在卸载了VirtualBox5.x版本之后,重新安装了VirtualBox4.3.12版本。 进入虚拟机之后,配置ip地址 vi /e

2018-01-11 22:04:57 2389

原创 通过SQL比较两张表的异同

当两张表结构相同的时候,但是需要比较表内容是否相同,可以通过( A - B ) U ( B - A ) 结果集如果为空则相等,否则不等。 具体SQL: (select n1,n2,n3 from A minus select n1,n2,n3 from B) union (select n1,n2,n3 from B minus select n1,n2,n3 from A);

2018-01-04 22:14:12 5632 1

原创 Oracle的Index,以及组合Index

Index的优点,插好迅速 缺点: 1.数据量很大的情况,首次建index需要很久 2.会影响DML操作效率组合Index 应考虑被索引字段的优先顺序,应将经常作为限制条件的字段放在首位;重复值少,即高基数(high-cardinaltiy)的列往前靠,而重复值多的字段往后靠复合索引的第一个建议: 前缀性(Prefixing) 复合索引的第二个原理:可选性(Selectivity)

2017-12-11 11:12:32 310

原创 Oracle中Exists和in的异同

概念: EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False EXISTS 指定一个子查询,检测行的存在。执行方式: Exists: 通过使用EXISTS,Oracle会首先检查主查询,然后运行子查询直到它找到第一个匹配项,这就节省了时间。 In: Oracle在执行IN子查询时,首先执行子查询,并将获得的结果列表存放在一个加了

2017-12-11 10:58:17 278

原创 用来观察执行时间的function

create function get_date_to_date ( i_date1 in date, i_date2 in date ) return varchar2 is v_var varchar2(200); v_min number; begin v_min := trunc((i_d

2017-12-08 10:19:13 239

原创 Oracle DB Link简单使用

DB Link是一种单向的连接 例如 在A库新建了一个B库的DB Link,不代表会在B库出现一个同样的DB Link 查找某个schema下 DB Link的语句select * from dba_db_links使用DB Link的语句create table tab_test as select * from schema.tab_name@db_linkname注意:create

2017-12-08 10:14:03 309

原创 SQL中处理分母为0的方式

在报表的开发中常常会出现除法运算,在除法计算中需要注意分母可能为“0”,可以使用以下方法避免Oracle的报错a/b当b=0时,会报错a/b = round(decode(b,0,0,a/b),4)||'%'

2017-11-28 10:26:15 7978

转载 Oracle中的替换函数replace和translate函数

1.translate 语法:TRANSLATE(char, from, to) 用法:返回将出现在from中的每个字符替换为to中的相应字符以后的字符串。 若from比to字符串长,那么在from中比to中多出的字符将会被删除。 三个参数中有一个是空,返回值也将是空值。 举例:select translate('abcdefga','abc

2017-11-21 10:05:22 4646

原创 Oracle迅速取到一个表的所有列的列名的方法

我比较懒,但是又不愿意使用select * from table的方式去获取某个表中所有的列,尤其是在insert into中常常需要使用如此,因此偷懒记录如下方法select * from user_tab_cols c where c.table_name like upper('%表名%') order by c.column_id;再通过excel批量加上“,”,减少了在plsql

2017-11-16 14:59:28 3351

原创 Linux下日期的处理

输出当前日期(年月日) date=date +%Y%m%d echo $date 20171103输出昨天日期(年月日) date=date -d yesterday +%Y%m%d echo $date 20171102date=date +%Y%m%d echo $date 20171103 if [ 5 -eq date -d $date +%w ] 判断$date是否是周

2017-11-03 10:28:48 324

原创 Oracle for update/for update of/update的用法和区别

1.select * from Table for update –锁定表的所有行,只能读不能写 2.select * from Table where pkid = 1 for update –根据where条件,只锁定pkid=1的行 3.select * from Table a join Table b on a.pkid=b.pkid for update – 锁定两个表的所有行 4

2017-10-24 15:48:52 1729

原创 Ora-08103

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-09-20 21:43:08 1054

原创 create table as select 和 create table 再insert into select 的差异

从一个表到另一个表导入大量数据的时候可以选择create table nologging parallel 64 as select 的结构导入同时删除目标表的索引这样的效率是最高的原因:insert into select 是需要将数据写入databuffer cache中的,再刷入磁盘。而ctas的方式则是跳过了数据缓冲区,则是写到磁盘上,直接路径读写方式。海量数据

2017-07-18 11:13:35 801

原创 oracle hint

select /*+index(t idx_object_id)*/object_name from t where object_id=29;强制走indexselect /*+full(t)*/object_name from t where object_id=29强制走全表

2017-07-17 13:27:09 231

原创 Oracle根据多个字段进行查重

根据两个字段去重 (a,b)select * from tab t where (t.a, t.b) in (select t1.a, t1.b from tab t1 group by (t1.a, t1.b) having count(*) > 1

2017-07-14 17:16:56 2352

原创 Linux下tar的用法

tar在linux中是打包/解包的命令-c 打包-x 解包这两者只能同时存在一个tar -jpvc -f /root/test_3.tar.bz2 [/etc]j使用的是bz2的压缩/解压方式c 打包v 在解压的过程中,将文件名显示出来p 保留原有的属性-f 建立的文件名和路径[/etc] 需要处理的文件

2017-07-11 10:51:51 263

原创 Oracle Index

二  索引在结构上的类别可划分如下:B树索引、位图索引、散列索引、反转索引等 三  索引的介绍:1、B树索引(BTREEB数索引是我们日常工作最最常用的索引,大家平时在工作中说的"索引"默认都是B数索引;索引其实很简单,也很容易理解,用一本书的目录来形容最为贴切了,B树索引的结构跟图书馆的目录也很像B树索引的结构:索引的顶层为根,它包

2017-07-10 12:31:19 236

转载 shell if [ ]

[ -a FILE ]  如果 FILE 存在则为真。  [ -b FILE ]  如果 FILE 存在且是一个块特殊文件则为真。  [ -c FILE ]  如果 FILE 存在且是一个字特殊文件则为真。  [ -d FILE ]  如果 FILE 存在且是一个目录则为真。  [ -e FILE ]  如果 FILE 存在则为真。  [ -f FILE ]

2017-07-07 10:45:11 354

原创 Linux学习小结笔记

占坑

2017-07-04 17:05:09 379

转载 磁盘的组成

磁盘的组成主要有盘片、机械臂、磁头与主轴马达所组成, 而数据的写入其实是在盘片上面。盘片上面又可细分出扇区(Sector)与柱面(Cylinder)两种单位, 其中扇区每个为512bytes那么大。 整个磁盘的第一个扇区特别的重要,因为他记录了整个磁盘的重要资讯! 第一个扇区主要记录了两个重要的资讯,分别是:·    主要启动记录区(Master Boot Record, MBR)

2017-07-04 15:30:53 441

原创 Oracle中查询最近修改的数据对象

使用的数据字典表是 user_objectsselect t.OBJECT_NAME, t.OBJECT_TYPE, t.LAST_DDL_TIME from user_objects t

2017-07-03 16:33:30 1678

原创 远程SQLPLUS连接失败 tns12560

备忘回去解决

2017-06-29 12:42:17 897

原创 配置本地yum仓库

Step1 挂载本地yum源先将rhel6.5的iso文件传到os中新建cdrom目录将cdrom挂载设置开机启动mkdir media/cdrommount /dev/cdrom /media/cdromvim /etc/fstab/dev/cdrom /media/cdrom iso9660 defaults 0 0Step2 配置本地yum进入/etc/y

2017-06-27 15:14:24 360

原创 SQLLDR CTL文件

TemplateLOAD DATAINFILE "C:/your file name.csv"  // 数据文件名+路径txt或者csv格式into TABLE tab_sqlldr// 目标表名append  // 插入数据的方式 有append/insert/replace/truncate// APPEND 原先的表有数据 就加在后面 // INSER

2017-06-26 16:24:28 7664 1

原创 Oracle sqlplus中执行SQL脚本 Error SP2-0310

在SQLPLUS环境下,可以使用@path的方式来执行SQL脚本但是我尝试了多次,最后都是这个错误后来将path中的’D:\oracle scripts’修改成‘D:\oracle_scripts’,脚本执行成功

2017-06-20 11:11:33 5610

原创 Linux Boot出现 an error occurred during the file system

吃完饭回来发现虚拟机死了,强制退出后重启出现如下现象:***An error occured during the filesystem check***Dropping you to a shell; the system will reboot***when you leave the shell.......Give root password for maint

2017-06-17 13:29:45 404

原创 VirtulBox安装RTEL7.3

1.    安装Virtualbox软件。2.   安装完成后,linux只有32bit的版本,选择了32bit版本安装RHEL7.3的时候会出现黑屏的现象,需要在Bios中使CPU的虚拟化enable,重启打开Virtualbox软件。效果如下:3.   选择内存大小,由于我的内存比较大,选择了3094mb内存4.    选择创建虚拟新的虚拟硬盘5.    选择VDI

2017-06-09 00:37:53 311

原创 JAVA登录模块

String sql = select * from user ResultSet rs = executeQuery(sql);While(rs.next()){String user = rs.getString(0);String pw = rs.getString(1);}if(user.equals("+user+")&&pw.equals("+p

2017-06-06 21:31:35 483

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除