随笔分类 -  Oracle

摘要:--计算表空间使用情况 SELECT UPPER(F.TABLESPACE_NAME) "HJ", D.TOT_GROOTTE_MB "表空间大小(M) ", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M) ", TO_CHAR(ROUND((D.TOT_GRO 阅读全文
posted @ 2025-04-08 23:00 blog_yuan 阅读(16) 评论(0) 推荐(0)
摘要:create or replace procedure pro_cursor_type_Vast_tmp table3%rowtype;type c_type is ref cursor;cur c_type; v_taname varchar2(100);beginv_taname:='aa';open cur for 'select * from table3 where taname=:a order by taid desc' --a只是绑定变量的占位符以 =: 符号进行绑定 using v_taname; dbms_output.put_line(&# 阅读全文
posted @ 2012-06-21 19:10 blog_yuan 阅读(443) 评论(0) 推荐(0)
摘要:create or replace procedure pro_cursor_delete( inpit_taid number)as v_taid number;cursor c_delete is select taid from table3 where taid=inpit_taid for update of taid; --锁定taid列的单行值,防止所有的数据被删除了beginopen c_delete;loopfetch c_delete into v_taid; exit when c_delete%notfound; delete table3 where taid=inp 阅读全文
posted @ 2012-06-13 21:48 blog_yuan 阅读(1408) 评论(0) 推荐(0)
摘要:create or replace trigger emp--before 表示对操作前的触发器-- after 表示对操作后的触发器--每张表最多可建立12个触发器--before inset--before insert for each row--after insert --after insert for each row--before uPdate--before uPdate for each row--after uPdate --after uPdate for each row--before uPdate--before uPdate for each row--aft 阅读全文
posted @ 2012-06-12 10:19 blog_yuan 阅读(1198) 评论(0) 推荐(1)
摘要:create or replace procedure 显示游标更新as--select taid, taname, bqid from table3new_taid number;cursor cur_table is --显示声明游标select taid from table3 where taid < 10for update of taid; --taid在<10的范围之内进行锁定 c_row cur_table%rowtype; --返回行的数据begin open cur_table; loop fetch cur_table into new_taid; exit 阅读全文
posted @ 2012-06-10 22:22 blog_yuan 阅读(634) 评论(0) 推荐(1)
摘要:create or replace procedure RefCursorastype toys_curtyp is ref cursor; cur toys_curtyp; stmt_str VARCHAR2(200); v_TAID number; v_taname VARCHAR2(100); v_bqid number;begin stmt_str :='select TAID, taname, bqid from table3'; OPEN cur FOR stmt_str; loop FETCH cur INTO v_TAID, v_taname,v_bqid; e 阅读全文
posted @ 2012-06-10 10:22 blog_yuan 阅读(893) 评论(0) 推荐(1)
摘要:create or replace procedure 隐式游标 as flag CHAR := 'U' ;beginif SQL%found then update table3 set TANAME='问问' where taid=1; commit; flag :='I'; insert into table3(taid,taname,bqid) values(4,'人事部',2); commit; end if; if flag ='U' then dbms_output.put_line('表已更 阅读全文
posted @ 2012-06-10 01:30 blog_yuan 阅读(568) 评论(0) 推荐(2)
摘要:create or replace procedure 带参数的游标as v_taid number(4); v_taname VARCHAR2(100); v_bqid number;CURSOR emp_cur(v_taname VARCHAR2) is --此处参数只是一个占位符而已SELECT taid, taname,bqid FROM table3 WHERE taid = v_taid;begin v_taid := 1; OPEN emp_cur(v_taname); LOOP FETCH emp_cur INTO v_taid, v_taname,v_bqid; EXIT W 阅读全文
posted @ 2012-06-10 01:28 blog_yuan 阅读(1972) 评论(0) 推荐(0)