
oracle开发
IT职场成长课
微信公众号「IT职场成长课」
IT技能、职场故事、让我与你一起成长!
展开
-
oracle ORA-09925 Unable to create audit trail file
今天一台数据库登录报ORA-09925错误 oracle@linux-37:~/oradata> sqlplus / as sysdba SQL*Plus: Release 11.1.0.6.0 - Production on Tue Nov 22 18:04:21 2011 Copyright (c) 1982, 2007, Oracle. All rights rese...原创 2011-11-23 18:20:26 · 519 阅读 · 0 评论 -
oracle SQL*Loader-00510错误
今天一个入库程序报错SQL*Loader-00510 Physical record in data file (string) is longer than the maximum(number)明显是sqlloader引起的官方文档解释如下Cause: The datafile has a physical record that is too long.Action: U...原创 2011-11-26 17:44:45 · 1464 阅读 · 0 评论 -
oracle ORA-01143:cannot disable media recovery
今天一台服务器的开启了归档,导致文件系统撑满了,由于我们是开发库,没必要开启归档,所以就把数据库改为非归档模式,但是在修改的时候碰到ORA-01143: cannot disable media recovery - file 20 needs media recovery错误。后来将数据文件恢复后才将数据库修改成功。下面为操作过程 SQL> shutdown immediate...原创 2011-11-29 17:52:29 · 952 阅读 · 0 评论 -
oracle中按指定条数批量处理的方法
oracle中按指定条数批量处理的方法示例--每处理10000条提交一次loopinsert into t2select * from t1 where rownum <= 10000; --每次插入10000条delete from t1 where rownum <= 10000; --每次删除10000条v_rowcount := sql%ro...原创 2011-12-26 15:35:00 · 872 阅读 · 0 评论 -
PLSQL developer的版本控制
下面简单介绍下PLSQL developer工具的SVN版本控制1, 下载pl/sql-svn插件。 2, 关闭你打开的所有pl/sql窗口。3,将插件里的SVN_Plugin.dll文件复制到\PLSQL Developer\PlugIns目录下。4,重新打开pl/sql,出现SVN 插件菜单。5,点击TortoiseSVN菜单目录下Open project子菜单。6...原创 2012-05-14 11:19:25 · 1420 阅读 · 0 评论 -
oracle计算连续登陆/上班天数
现在有一个计算用户连续上班天数的报表,发现通过用row_number分析函数可以完美计算这个问题。这个SQL可以解决计算用户连续登陆、签到、上班、旷工等问题。首先将row_number按照日期排序将日期的日,比如2016-7-1,将1截取出来转换成数字把这个日期数字减去row_number计算出来值,作为分组号,因为不连续的值算出来的分组号就不一致;根据分组号字段进行group by,可以算出...原创 2016-07-21 10:24:47 · 1169 阅读 · 0 评论 -
ORA-22922: 不存在的 LOB 值
今天开发报表遇到了ORA-22922: 不存在的 LOB 值问题,原因是用了wm_concat函数,转换后是clob类型,导致报表查询时报错。后来改为使用listagg函数替代,完美解决问题,同时网上还有一种解决方法。新建一个自定义函数。保存一下这个自定义函数列转行的函数:create or replace TYPE zh_concat_imAUTHID CURRENT_USER AS OBJE...原创 2017-01-03 17:32:05 · 1565 阅读 · 0 评论 -
Oracle判断两个时间段是否有重叠
判断两个时间段是否有重叠(a,b),(c,d)判断两段时间是否有重叠 方法一select 'yes' from dual where d>a and c<b;方法二select 'yes' from dual where (a, b) overlaps (c,d);方法三select 'yes' from dual where a between c and d or d betwe...原创 2017-06-14 19:59:22 · 5573 阅读 · 0 评论 -
Oracle查询包含单引号字段
方法一select * from tab where col like '%'||chr(39)||'%';方法二select * from tab where col like '%''%';原创 2018-07-05 10:36:38 · 4397 阅读 · 0 评论 -
oracle NLS_LANG详解
1. NLS_LANG 参数组成NLS_LANG参数由以下部分组成:NLS_LANG=<Language>_<Territory>.<Clients Characterset>NLS_LANG各部分含义如下:LANGUAGE指定:-Oracle消息使用的语言-日期中月份和日显示TERRITORY指定-货币和数字格式-地区和计算...原创 2011-11-23 17:53:55 · 506 阅读 · 0 评论 -
oracle的正则表达式
目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix(Linux, Unix等),HP等操作系统,PHP,C#,Java等开发环境。Oracle 10g正则表达式提高了SQL灵活性。有效的解决了数据有效性, 重复词的辨认, 无关的空白检测,或者分解多个正则组成的字符串等问题。Oracle 10g支持正则表达式的四个新函数分别是:REGEXP_LIKE、REGEXP_INSTR、...原创 2011-11-22 23:26:41 · 107 阅读 · 0 评论 -
oracle中的&变量和'&变量'
今天碰到个&变量赋值的问题。 declare uid number(10);begin uid:=&x;end; 当&x输入为空时报如下错ORA-06550: 第 5 行, 第 9 列: PLS-00103: Encountered the symbol ";" when expecting one of the followi...原创 2011-11-22 23:25:55 · 276 阅读 · 0 评论 -
oracle TRANSLATE函数详解
TRANSLATE ( 'char' , 'from_string' , 'to_string' ) TRANSLATE返回将from_string中的每个字符替换为to_string中的相应字符以后的string。TRANSLATE是REPLACE所提供的功能的一个超集。如果from_string比to_string长,那么在from_string中而不在to_string中的额外字...原创 2011-11-22 23:21:54 · 160 阅读 · 0 评论 -
oracle sql语言like模糊查询–通配符
在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些"很像…"的数据记录,以下是可使用的通配符: %零或者多个字符 _单一任何字符(下划线) \特殊字符 []在某一范围内的字符,如[0-9]或者[aeth] [^]不在某范围内的字符,如[^0-9]或者[^aeth] 其中关于条件...原创 2011-11-22 23:23:06 · 142 阅读 · 0 评论 -
MERGE--一个语句实现存在就更新,不存在就插入
使用MERGE语句从一个表中的选择的行更新或插入到另一个表。是否更新或插入到目标表中的决定是基于在ON子句中的条件。它可以让你避免多个INSERT和UPDATE DML语句。语法为: MERGE INTO table USING data_source ON (condition) WHEN MATCHED THEN update_clause WHEN NOT MAT...原创 2011-11-22 23:24:00 · 384 阅读 · 0 评论 -
oracle把查询内容输出到文本
把查询内容输出到文本set echo off pagesize 0 heading off feedback off termout offspool test.sqlselect count(*) from user_tables;spool off上面的脚本执行完之后就会将查询内容输出至test.sql第一行中的set命令对环境进行了设置具体要设置哪些可以根据需求自...原创 2011-11-22 23:24:54 · 707 阅读 · 0 评论 -
Oracle查询某个字符出现的次数
通过下面的SQL可以查询【.】在字符串中出现的次数:select length('test.char') - length(replace('test.char','.','')) from dual;length获取字符总长度,length+replace获取去掉特定字符之后的长度,相减获得的差就是特定字符出现的次数。...原创 2019-06-17 19:23:03 · 9682 阅读 · 0 评论