oracle
土匪八号
这个作者很懒,什么都没留下…
展开
-
表列操作
新增列declare cnt number;begin select count(1) into cnt from user_tab_columns where upper(table_name)=upper('tchannelgroup') and upper(column_name)=upper('c_servicetype') ; if cnt =0 then原创 2012-03-08 16:00:59 · 481 阅读 · 0 评论 -
oracle批量新增字段 数据赋值应用
/****************************/--表名 个人客户扩展表 --1 C_ASSETFAVOUR 资产投资偏好--2 C_ACTINVESTFAVOUR 实际风险偏好--3 C_PRORAISEFAVOUR 产品类型投资偏好--4 C_ACTPRORAISEFAVOUR 实际产品类型投资偏好--5 C_PRODUCTFAVOUR 旗下原创 2012-08-17 20:27:48 · 2639 阅读 · 0 评论 -
oracle 进行内存设置导致无法正常启动(假启动)为题
为了降低oracle的内存使用率,修改了相应的参数ALTER SYSTEM SET sga_max_size = 200M SCOPE=SPFILEALTER SYSTEM SET sga_target= 250M SCOPE=SPFILE但是没注意到 sga_max_size 比sga_target小 在我下一起重启电脑的时候oracle出现假启动现象,4秒就可原创 2012-08-24 11:18:41 · 1957 阅读 · 0 评论 -
oracle查询父子树
查询父子树 select c_channelno from tchanneltree tc start with c_channelno='000100020041' connect by prior c_channelno = tc.c_parentcode原创 2012-09-05 17:37:52 · 1368 阅读 · 0 评论 -
删除oracle一批表 批量删除oracle中表 -清理回收站
declaretype refcursor is ref cursor; v_cursor refcursor; v_table varchar2(50);begin open v_cursor for SELECT TABLE_NAME FROM user_tables t where t.TABLE_NAME like '%TPCRM_%'; loop原创 2012-08-02 14:49:10 · 1909 阅读 · 0 评论 -
oracle导入cvs文件方法
书写文件。 可以使txt文件load data infile 'F:\公司资讯\程序设计大赛\测试表\产品行情.csv' --cvs文件路径 append into table t_fundday fields terminated by ',' (C_FUNDCODE, D_DATE,F_NETVALUE ) ;原创 2012-11-11 14:55:33 · 4269 阅读 · 0 评论 -
oracle 中copy命令
copy命令式sqlpluse中特有的命令,在oracle过程中无法使用。在数据转移的过程中会经常用到,例如数据中心的数据抽取和清洗,这个执行速度要比一般的insert要快。在底层可以进行c调用copy命令以下是copy的基本用法--copy命令在oracle过程中无法使用,要是跨实例跨连接操作要用dblink;--直接从jccf_crm/jccf_crm@jccf_testd原创 2012-12-27 10:12:32 · 1392 阅读 · 0 评论 -
oracle 日期格式转换,获取年份
1- 系统会提供默认的格式,但是在进行转换时往往会提示‘文字格式不匹配’ 要先把查出来的日期转换为日期格式再进行相关的转换SELECT to_date('20-1月 -10') FROM dual SELECT to_char(to_date('20-1月 -10'),'yyyy/mm/d原创 2012-08-02 18:38:48 · 5699 阅读 · 0 评论 -
oracle中判断是否为日期/number格式
有时候在数据库中进行日期计算式会经常报日期格式不匹配,经查证大部分都是因为库中有垃圾数据日期格式不对1- 判断是否日期类型用一下函数可以进行判断,把垃圾数据给删掉CREATE OR REPLACE FUNCTION isdate (datestr VARCHAR2, format VARCHAR2)RETURN INTISp_date DATE;BEGINS转载 2012-09-07 14:05:44 · 11447 阅读 · 0 评论 -
oracle实现/排名/求百分比
1- ROW_NUMBER() over() 实现排名select a.*,ROW_NUMBER() over(ORDER BY nvl(sal,0) DESC) as "名次" from emp a;2- 计算百分比函数ratio_to_report(c_allbalance) over() as c_ratio 计算每行 c_allbalance 占sum(c_all原创 2012-07-24 14:01:32 · 2891 阅读 · 0 评论 -
oracle创建用户及授权
用sys登录,如果是system的话权限不够大 --1、以DBA身份登录后创建用户sm_crm ,实际创建需替换create user sm_crm identified by sm_userdefault tablespace fund_tabletemporary tablespace tempprofile default--限制配额quota unlimited原创 2013-01-22 16:27:00 · 884 阅读 · 0 评论 -
最快的方式删除oracle数据
declare type refcursor is ref cursor;v_cursor refcursor;type array_rowid is table of rowid;type array_value is table of varchar2(20);a_rowid array_rowid := array_rowid();a_value arra原创 2014-04-02 11:48:56 · 736 阅读 · 0 评论 -
oracle新建表空间、删除表空间、扩展表空间语法
建立表空间 8 9CREATE TABLESPACE data01 10DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M 11UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k 12 13删除表空间 14 15DROP TABLESPACE dat原创 2012-03-08 13:17:06 · 1464 阅读 · 0 评论 -
oracle 游标
游标的概念: 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库。这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率。 游标有两种类型:显式游标和隐式游标。在前述程序中用到的SELECT...INTO...查原创 2012-03-13 13:11:11 · 690 阅读 · 0 评论 -
oracle的转义问题,提示输入参数怪问题,Oracle提示属于参数
oracle的转义问题,提示输入参数怪问题 2011-08-30 15:28:25| 分类:db| 标签:|字号大中小 订阅今天在用plsql:insert into sysfunction(functionid,location,title,parent,orderno,type,description )values('B060000',q'{原创 2012-01-11 16:22:08 · 3071 阅读 · 0 评论 -
oracle中的null问题 in与exists
1 查数据查询一个表中在另一个表中不存在的数据select * from t1 where t1.v_no not in (select v_no from t2 where v_no is not null)--where v_no is not null 一定要加上班否则无法查处结果select * from t1 where not exists(s原创 2012-08-16 13:22:02 · 917 阅读 · 0 评论 -
orale插入blod数据 utl_raw.cast_to_raw()
用函数 utl_raw.cast_to_raw()原创 2012-08-13 16:20:18 · 2464 阅读 · 0 评论 -
oracle hint
Hint 是Oracle 提供的一种SQL语法,它允许用户在SQL语句中插入相关的语法,从而影响SQL的执行方式。 因为Hint的特殊作用,所以对于开发人员不应该在代码中使用它,Hint 更像是Oracle提供给DBA用来分析问题的工具 。在SQL代码中使用Hint,可能导致非常严重的后果,因为数据库的数据是变化的,在某一时刻使用这个执行计划是最优的,在另一个时刻,却可能很差,这也是CBO转载 2012-03-09 09:59:16 · 554 阅读 · 0 评论 -
用户权限 及操作
Oracle 数据库用户管理Oracle 权限设置一、权限分类:系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。二、系统权限管理:1、系统权限分类:DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。RESOURCE:拥有Resource权限的用户只转载 2012-03-09 15:19:27 · 582 阅读 · 0 评论 -
oracle hint 的英文解释(Alphabetical Listing of Hints )
Alphabetical Listing of HintsThis section provides syntax and semantics for all hints in alphabetical order.ALL_ROWS Hint Description of the illustration all_rows_hint.gifThe ALL_ROW转载 2012-03-09 11:36:35 · 1084 阅读 · 0 评论 -
oracle 设置数据库参数 使用户能调用系统对象
在用户中编写如下函数提示无 dba_objects 对象;create or replace function my_get_name(v_objid number)return varchar2 isv_objname varchar2(100);begin select t.OBJECT_NAME into v_objname from dba_objects t wh原创 2012-03-15 21:36:33 · 605 阅读 · 0 评论 -
oracle 基本查询 查看排名
1- 求排名前6-10 的员工 方法一:select employee, salary from ( select employee, salary, row_number() over (order by salary desc) r from salary_table )where r between 6 and 10;==========原创 2012-03-16 10:48:16 · 1082 阅读 · 0 评论 -
oracle 创建表 序列 注释 主键
DECLARE iCount number(2) := 0;BEGIN SELECT COUNT (*) INTO iCount FROM user_sequences u WHERE u.sequence_name = 'SEQ_TCAPITALNOTIFY'; IF iCount = 0 THEN /*创建序列*/ E原创 2012-04-14 18:43:35 · 2080 阅读 · 0 评论 -
子查询 oracle输入 set语句 MERGE 事务 数据类型 约束 视图 外键
1- 子查询select count(*) from t1 where t1.score > any (select score from t1 where t1.name='zhangjia' )等价于 :select * from t1 where t1.score > (select min(score) from t1 where t1.name='zhangjia' )原创 2012-03-08 11:37:54 · 1115 阅读 · 0 评论 -
oracle 分割字符串 截取字符串
在我们平时的处理过程总往往会遇到要把一个字符串拆分成一个数组,加在'in'后面作为条件,现提供两种方似乎。1- 正则表达式分割字符串select regexp_substr('2,3,4,5', '[^,]+', 1, l_count) stype from dual, (select level l_count from dual connect by level 2- 用REP原创 2012-07-06 15:02:11 · 5927 阅读 · 0 评论 -
oracle 游标例子不同的 打开方式 -判断最后一条记录
--1 显示游标declarecursor v_sc1 isselect sendnum,registedate from user_info t for update of t.userlevel,nicheng nowait; --of 后面可以多个变量n_level number;n_sendnum number;d_registedate date;begin原创 2012-03-14 16:14:07 · 6369 阅读 · 0 评论 -
oracle 删除表结构 及清空回收站
oracle10g,在pl/sql中选中删除后会出现类似:BIN$nJ5JuP9cQmqPaArFei384g==$0的表。1.查看回收站select * from user_recyclebin;2.清空回收站purge recyclebin;3.清空回收站中的某个表--如下方式删除会提示:SQL命令未正确结束。purge tabl转载 2012-08-07 11:14:29 · 3839 阅读 · 1 评论 -
win7下安装oracle
安装11g 并且要考win32_11gR2_database_2of2\database\stage\Components下三个文件夹到\win32_11gR2_database_1of2\database\stage下才能安装成功原创 2012-07-24 17:04:48 · 506 阅读 · 0 评论 -
oracle语法错误解决办法-在sqlplus中执行;用命令 show error 可查看具体错误地方
oracle语法错误解决办法-在sqlplus中执行;用命令 show error 可查看具体错误地方原创 2012-07-25 16:49:47 · 3819 阅读 · 0 评论 -
oracle 判断是否为数字
--书写如下函数判断是否为数字CREATE OR REPLACE FUNCTION ISNUMBER( C VARCHAR2)RETURN NUMBERISN NUMBER;BEGIN BEGIN N := TO_NUMBER(NVL(C,'a')); EXCEPTION WHEN OTHERS THEN RETURN 0;原创 2012-08-12 15:51:26 · 1111 阅读 · 0 评论 -
数据库优化查询更新操作/查询最大值
1- 在数据查询时面对大批量数据,如何关联查询。这个对查询效率影响很大。这里有两种方法提高查询效率。更新大批量数据时通过rowid查找在单表查询时可以增加并行度 select /*+ parallel(tcustomerinfo 8) */ c_custno from tcustomerinfo ti 多表查询 select /原创 2012-08-12 19:33:08 · 2675 阅读 · 0 评论 -
用oracle10G导出oracle11G DMP 和导入方法
1、导出前先清理表清理空表,用如下语句查出需要处理表,之后执行sql1 select 'alter table '||table_name||' allocate extent;'from user_tables WHERE SEGMENT_CREATED='NO';2 删除无效的dblink导出表exp userid=ats/123456@10.60.44.23/原创 2017-02-15 09:30:50 · 4013 阅读 · 0 评论