随笔分类 -  Oracle

摘要:http://www.cnblogs.com/CareySon/archive/2011/12/12/2284740.html 阅读全文
posted @ 2019-01-11 16:01 丨逸仙 阅读(122) 评论(0) 推荐(0) 编辑
摘要:一 以需要被查询的用户登录oracle(假如为A) B为要查询A用户下的表的用户 二 执行查询语句: select 'grant select on A.'|| tname ||' to B;' from tab; 以下为模拟结果: ... 三 将结果复制 四 登录system用户 五 打开sqlw 阅读全文
posted @ 2018-07-07 02:21 丨逸仙 阅读(2848) 评论(0) 推荐(0) 编辑
摘要:--先赋权限 GRANT UPDATE ON nc002.TD_KHD_YH TO zjjs_666; GRANT insert ON nc002.TD_KHD_YH TO zjjs_666; GRANT delete ON nc002.TD_KHD_YH TO zjjs_666; --创建触发器 create or replace trigger triYhzl after inse... 阅读全文
posted @ 2018-07-05 16:25 丨逸仙 阅读(145) 评论(0) 推荐(0) 编辑
摘要:PL/SQL Developer Test script 3.0 52 declare --行类型 row_emp T_LEDGER%rowtype; --显式游标 cursor cur_emp is select t.* from T_LEDGER T,t_Coursetypes c where t.course_id=c.id and t.account_noc.course_... 阅读全文
posted @ 2017-11-09 16:49 丨逸仙 阅读(256) 评论(0) 推荐(0) 编辑
摘要:--创建分区表(超过数据区间不自动增加分区需要事先建立分区) CREATE TABLE TEST_FQB ( ID VARCHAR2(20) , TIME DATE ) --已TIME字段为RANGE来进行分区 PARTITION BY RANGE (TIME) --如想自动增加分区则需要开启下面一行命令,如插入数据有超过建立的分区时自动创建分区不规范命名,不建议使用; --按月自... 阅读全文
posted @ 2017-09-12 09:28 丨逸仙 阅读(183) 评论(0) 推荐(0) 编辑
摘要:使用set serveroutput on 命令设置环境变量serveroutput为打开状态,从而使得pl/sql程序能够在SQL*plus中输出结果 使用函数dbms_output.put_line()可以输出参数的值。 set serveroutput on命令是不可以放在存储过程中执行的. 阅读全文
posted @ 2017-08-04 12:55 丨逸仙 阅读(211) 评论(0) 推荐(0) 编辑
摘要:使用set serveroutput on 命令设置环境变量serveroutput为打开状态,从而使得pl/sql程序能够在SQL*plus中输出结果 使用函数dbms_output.put_line()可以输出参数的值。 set serveroutput on命令是不可以放在存储过程中执行的. 阅读全文
posted @ 2017-08-04 12:54 丨逸仙 阅读(5271) 评论(1) 推荐(0) 编辑
摘要:set serveroutput on --使用基本变量类型 declare --定义基本变量;类型 --基本数据类型 pnumber number(7, 2); pname varchar2(20); pdate date; begin pnumber := 1; dbms_output.put_line(pnumber); dbms_output.pu... 阅读全文
posted @ 2017-08-04 12:52 丨逸仙 阅读(403) 评论(0) 推荐(0) 编辑
摘要:一、存储过程 不可以在insert,update,delete中直接使用,可以有return但代表的是退出过程 过程有三种类型:不返回值,可以返回多个值,参数有三种类型,分别如下: in:只输入,不返回结果,默认为in out:只返回结果,不输入,要想取出输出变量的值必须通过pl/sql块的变量取出 in out:可输入,又可返回结果,要想取出输... 阅读全文
posted @ 2017-08-04 12:50 丨逸仙 阅读(326) 评论(0) 推荐(0) 编辑
摘要:1、for update 和 for update nowait 的区别: 首先一点,如果只是select 的话,Oracle是不会加任何锁的,也就是Oracle对 select 读到的数据不会有任何限制,虽然这时候有可能另外一个进程正在修改表中的数据,并且修改的结果可能影响到你目前select语句 阅读全文
posted @ 2017-08-04 12:47 丨逸仙 阅读(361) 评论(0) 推荐(0) 编辑
摘要:/*Sql递归查询*/ /* 实际就是把所有树的节点查找出来 Oracle的一个表中也可以保存树形结构信息,用start with...connect by等关键字 eg:创建表并插入数据 */ Create table Tree(son char(10),father char(10)); ins 阅读全文
posted @ 2017-08-04 12:46 丨逸仙 阅读(582) 评论(0) 推荐(0) 编辑
摘要:/* Oracle物化视图 */ /* 为什么要使用物化视图? 物化视图作为sql调优的一种手段广泛用在数据仓库环境下。 大量的长查询语句,处理的不好,就会引起严重的I/O问题。 */ /* 什么是物化视图? 物化视图和普通视图相对应,在Oracle使用普通视图时会重复执行创建视图的所有语句。 物化 阅读全文
posted @ 2017-08-04 12:43 丨逸仙 阅读(288) 评论(0) 推荐(0) 编辑
摘要:由三种方式抛出异常 1. 通过PL/SQL运行时引擎 2. 使用RAISE语句 3. 调用RAISE_APPLICATION_ERROR存储过程 当数据库或PL/SQL在运行时发生错误时,一个异常被PL/SQL运行时引擎自动抛出。异常也可以通过RAISE语句抛出 RAISE exception_na 阅读全文
posted @ 2017-08-04 12:43 丨逸仙 阅读(2508) 评论(1) 推荐(0) 编辑