【Oracle中存取控制介绍】教程文章相关的互联网学习教程文章

ORACLE-013:oracle中kill死锁进程【代码】

oracle中对于访问频率很高的包,存储过程或者函数,会引起死锁。对于用到了死锁的对象的脚本都会无法运行,造成卡死,或者报异常:打开的连接太多。这时需要使用dba权限账户去kill掉死锁的对象。使用 alter system kill session 死锁对象的ID;执行如下sql,查找出死锁的ID,并将alter语句拼接好:select Distinct ‘alter system kill session ‘||chr(39)||b.sid||‘,‘||b.serial#||chr(39)||‘;‘As kill对象sql语句, b.userna...

Oracle中sequence的使用方法

在Oracle数据库中,sequence等同于序列号,每次取的时候sequence会自动增加,一般会作用于需要按序列号排序的地方。1、Create Sequence(注释:你需要有CREATE SEQUENCE或CREATE ANY SEQUENCE权限)CREATE SEQUENCE emp_sequenceINCREMENT BY 1 —— 每次加几个START WITH 1 —— 从1开始计数NOMAXVALUE —— 不设置最大值NOCYCLE —— 一直累加,不循环CACHE 10;只要定义了emp_sequence,你就可以用使CURRVAL,NEXTVALCURRVAL=返回 ...

Oracle中scott用户下基本表练习SQL语句

--选择部门中30的雇员SELECT * from emp where DEPTNO=30;--列出所有办事员的姓名、部门、编号--采用内连接方式,也就是等值链接,也是最常用的链接SELECT ename,empno,dname from emp e INNER JOINdept d on e.deptno=d.deptno where job=‘CLERK‘;--找出佣金高于薪金的雇员select * from emp where comm>sal;--找出佣金高于薪金60%的雇员select * from emp where comm>sal*0.6;--找出部门10中所有经理和部门20中所有办事员selec...

oracle中如何判断一个字符串是否含有汉字【图】

一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ①全角字符的判断,或者是含有汉字的字符串的判断 本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力。 一.2.2 实验环境介绍 11.2.0.3 RHEL6.5 一.2.3 本文简介 看到网友问,怎么查询表中某个...

Oracle中临时表空间的清理【图】

Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间消耗的主要原因是需要对查询的中间结果进行排序。临时表空间的主要作用:索引create或rebuild Order by 或 group by Distinct 操作 Union 或 intersect 或 minus Sort-merge joins analyze重启数据库可以释放临时表空间,如果不能重启实例,而一直保持问题sql语句的执行,temp表空间会一直增长。即使重建了临时表空间,过一段时间后,临时表空间的使用率就达到99%,...

Oracle中函数/过程返回多个值(结果集)【代码】

OR REPLACE FUNCTION A_Test(orType varchar2) RETURN SYS_REFCURSOR istype_cur SYS_REFCURSOR; BEGINOPEN type_cur FOR select col1,col2,col3 from testTable ;RETURN type_cur; END; (2)返回table类型的结果集: 首先定义一个行类型:CREATE OR REPLACE TYPE "SPLIT_ARR" AS OBJECT(nowStr varchar2(18))其次以此行类型定义一个表类型: CREATE OR REPLACE TYPE "SPLIT_TAB" AS TABLE of split_arr;定义函数(此函数完...

Oracle中Clob类型处理解析【代码】

最近利用NHibernate映射类型为Clob字段在插入数据时发现当字符的字节数(一个半角字符一个字节,一个全角字符两个字节)在2000-4000之间时报错(ORA-01461:仅可以插入LONG列的LONG值赋值)。经过不断查找资料和自己的试验该问题终于得到解决,下边我将自己的心得给大家做一个分享。 准备 系统环境 xp+.net2.0+oracle9i 表结构(由于是测试,表结构随便建了一张) XX 字段名 类型 ID VARCHAR2(70) TE...

Oracle中 Instr 这个函数

http://www.jb51.net/article/42369.htm sql :charindex(‘字符串‘,字段)>0 charindex(‘administrator‘,MUserID)>0 oracle:instr(字段,‘字符串‘,1,1) >0 instr(MUserID,‘administrator‘,1,1)>0 在项目中用到了Oracle中 Instr 这个函数,顺便仔细的再次学习了一下这个知识。 Oracle中,可以使用 Instr 函数对某个字符串进行判断,判断其是否含有指定的字符。 其语法为: Instr(string, substring, position, occurrence)...

Oracle中dual表的用途介绍

dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录。我们可以用它来做很多事情,如下:1、查看当前用户,可以在 SQL Plus中执行下面语句 select user from dual;2、用来调用系统函数select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss‘) from dual;--获得当前系统时间select SYS_CONTEXT(‘USERENV‘,‘TERMINAL‘) from dual;--获得主机名select SYS_CONTEXT(‘USERENV‘,‘language‘) from dual;...

Oracle中DDL语句对事务的影响

1.Oracle中DDL语句对事务的影响 在Oracle中,执行DDL语句(如Create Table、Create View等)时,会在执行之前自动发出一个Commit命令,并在随后发出一个Commit或者Rollback命令,也就是说,DDL会象如下伪码一样执行: Commit;DDL_Statement; If (Error) then Rollback; Else Commit;End if; 我们通过分析下面例子来看Oracle中,DDL语句对事务的影响: Insert into some_table values(‘Before’);Creaate table T(x int); Insert int...

Oracle中set serveroutput on介绍

定义set serveroutpu on是使oracle能够使用自带的输出方法 dbms_output.put_line(‘XX’);使用范围使用于PL/SQL COMMAND WINDOW,SQL PLUS中永久有效为了不需要每次都输入set serveroutput on 可以在Oracle安装目录下查下glogin.sql文件,并在文件中增加set serveroutput on即可。版权声明:本文为博主原创文章,未经博主允许不得转载。Oracle中set serveroutput on介绍标签:plus oracle 本文系统来源:http://blog.csdn.net...

Oracle中SYS_CONNECT_BY_PATH函数的妙用

= 1 CONNECT BY RN - 1 = PRIOR RN AND A = PRIOR A GROUP BY A; 其中,SYS_CONNECT_BY_PATH函数主要作用是可以把一个父节点下的所有子节点通过某个字符进行区分,然后连接在一个列中显示。 row_number函数的用途是非常广泛,这个函数的功能是为查询出来的每一行记录生成一个序号。生产序号的方法通过over()函数里面的语句来控制。 Oracle中SYS_CONNECT_BY_PATH函数的妙用标签:本文系统来源:http://my.oschi...

oracle中往varchar2格式的字段中插入date时间格式的值会发生什么?

--建立表test1 create table TEST1 ( ID VARCHAR2(40) default sys_guid(), TDATE VARCHAR2(200) ) tablespace APP_TX_DATA pctfree 10 pctused 40 initrans 1 maxtrans 255 storage ( initial 64K minextents 1 maxextents unlimited ); --插入date时间格式数据 insert into test1 values(sys_guid(),sysdate+10);、 --查询数据 select * from test1 -- tdate值为 01-7月 -15 --Q:如何将现有数...

Oracle中rownum的用法【代码】

有一张商品表,如果要求你查询前5条最新上架日期的商品。你的SQL语句怎么写呢?先判断条件再排序?错。 思路很简单,就是要先要排序,再取前5条商品。<span style="font-size:18px;">Select id,name from (Select * from 商品表名 where order by time desc) where rownum <=5</span> id,name 自然是要查询的字段了。form后面跟着的就是表名了,但我们是要取最新上架的商品。那我们先对商品按时间排序一下。使用order by time de...

oracle中CAST函数使用简介

转换列或值 语法:cast( 列名/值 as 数据类型 ) 用例: 1)、转换列 --将empno的类型(number)转换为varchar2类型。 select cast(empno as varchar2(10)) as empno from emp; EMPNO ---------- 7369 7499 7521 ... 2)、转换值 --将字符串转换为整型。 SELECT CAST(‘123‘ AS int) as result from dual; RESULT --- 123 返回值是整型值123。 --如果试图将一个代表小数的字符串转换为整型值,又会出现什么情况呢? ...