oracle存储过程代码

刘贤同学写的一个例子,很不错,所以就收藏一下:)

sql 代码
  1. create or replace  
  2. PROCEDURE p_insert_t   
  3. (v_x in NUMBER)   
  4. IS  
  5. temp_id number;   
  6. BEGIN  
  7. FOR i IN 1..v_x LOOP   
  8. select SEQ_B_USER_ID.nextval into temp_id from dual;   
  9. insert into buser (id, username, nickname, status, createdtime) values(temp_id, to_char(temp_id), to_char(temp_id), 0, sysdate);   
  10. END LOOP;   
  11. END;   
  12. --execute  

创建sequence的方法(备忘):

sql 代码
  1. CREATE SEQUENCE SEQ_B_USER_ID INCREMENT BY 1 START WITH 1;   

复制一个表的结构:

sql 代码
  1. create table test as select * from bookmarkcategory where 1=2;  

随机数:

sql 代码
  1. select dbms_random.value(1,20) from dual;  

游标的使用例子:

sql 代码
  1. SET SERVERIUTPUT ON     
  2. DECLARE     
  3. CURSOR c_emp IS select title from bookmarkcategory where username='130';   
  4. r_emp c_emp%ROWTYPE;     
  5. BEGIN     
  6. OPEN c_emp;     
  7. -- LOOP     
  8. FETCH c_emp INTO r_emp;     
  9.     --EXIT WHEN c_emp%NOTFOUND;     
  10.     --DBMS_OUT.PUT.PUT_LINE('Salary of Employee is'|| r_emp.title);     
  11.   --END LOOP;     
  12. update bookmarkcategory set title = r_emp.title where id=121;   
  13. CLOSE c_emp;     
  14. END;    

posted on 2009-01-07 14:50  dhj  阅读(161)  评论(0编辑  收藏  举报

导航