关于oracle中没有权限也能够修改表的数据的bug
今天听人说oracle中有个bug 就是没有update权限也能够修改表的数据,听他这么说我一开始是不信的,不信归不信不如我们动手来实践一下在 hr用户下有权限访问scott下test表 但是没有update权限SQL> select * from scott.ceshi; EMPNO ENAME HIREDATE &nb...
控制文件过久的模拟实验
首先我们需要备份一个当前的控制文件之后create table t1(id int,name varchar2(10));beginfor i in 1..10 loop --插入几条数据insert into t1(i,'book');end loop;end;commit;alter system switch logfile;conn /as sysdbashutdown immediate ;这时候吧当前的controfile给rm掉之后我们用...
关于追踪一个transaction
scott用户下开一个session例如insert into emp(empno,ename) values(1001,'xiaowang');这时候我们不提交,产生了一个事物假如我们不知道这是在哪一个session中产生的可以通过select * from v$transaction;获得addr 得到addr 为000007FF8FD150A0之后再select * from V$session where taddr='000007FF8FD150A0...
oracle存储过程实例(同步人事系统信息数据)
CREATE OR REPLACE PROCEDURE PROC_STU_TEA AS v_tea_id number(19);--班主任对应id v_class_id number(19);--班级表的id v_stu_count int;--统计学生信息数量 v_claz_count int;--统计班级数据 v_cla_count int;--统计班级数据 v_tea_count int;--统计教职工数据 v_sso_count int;--统计sso登陆信息数 v_sso_name varchar(20);--sso登陆名 BEGIN --显示游标使用,使用for循环 --定义游标,名称为cur_tea declare cursor cur_tea is select BIRTH_DATE,SEX,STAFF_ID,name,NATION,SCHOOL_CD from sxdcp
当控制文件丢失解决办法
xrman 下connect target /这里要记住你的dbidRMAN> show all2> ;RMAN configuration parameters for database with db_unique_name ORCL are:CONFIGURE RETENTION POLICY TO REDUNDANCY 1;CONFIGURE BACKUP OPTIMIZATION OFF;CONFIGURE DEFAULT DEVICE TYPE TO DISK;CONFIGURE CONTROLFILE AUTOBACKUP ON;CO...
关于regexp_like的初试
regexp_like(列名,'^...')^表示开头第一个字母[12]表示1或2(李|王)表示李或王例先建一个表create table phone(name varchar2(10),phonenumber number(11),status varchar2(10));在里面插入几个数据insert into phone(name,phonenumber) values('xiaowang',131000000);.....通过一些电话号码可以查出开头为131...
关于dbms_alert 另一个会话里监视表的动态
首先是关于新建一个会话 对scott用户赋予权限grant execute on dbms_alert to scott;在scott 用户下注册一个警报exec dbms_alert.register('baojing');第二步var a varchar2(200);var b number;exec dbms_alert.waitone('baojing',:a,:b);这是后会无限的等待知道另一个会话执行dbms_alert.signal();打开另一个...
关于utl_file的一点见解
首先是create 一个directory :create or replace directory MY_DIR as'C:\app\crying\oracle_dirp';授权grant read,write on directory MY_DIR to scott;设置alter system set utl_file='C:\app\crying\oracle_dir' scope=both;之后就可写一个存储过程来利用utl_filecreate or replace procedure p1(dir varchar2...