SQL随记

Posted 一个java小生的奋斗史

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL随记相关的知识,希望对你有一定的参考价值。

1.for loop 循环

格式:for index in lower .. upper

    loop

    end loop;

 for i in 1 .. g_descTbl.count
    loop
      if ( g_descTbl(i).col_type = 12 )
      then
        utl_file.put( l_output, l_sep || g_descTbl(i).col_name || 
                      \' date \'\'ddmmyyyyhh24miss\'\' \'); 
      else
        utl_file.put( l_output, l_sep || g_descTbl(i).col_name || 
                      \' char(\' || 
                      to_char(g_descTbl(i).col_max_len*2) ||\' )\' );
      end if;
      l_sep := \',\'||g_nl ;
    end loop;

2.sql的异常处理:

(1)系统运行出错时自动抛出

(2)使用RAISE关键字抛出任何的异常,格式:RAISE exception_name;

declare
    is_exception EXCEPTION;
bein
    RAISE is_exception;
    end;

(3)使用Raise_Application_Error 抛出异常,它能抛出一个异常并给异常赋予一个错误号以及错误信息。格式:  Raise_application_error(error_number,message[,true,false])

begin
      Raise_application_error(-20123,\'can not find error\',true);
    end;

(4)用户自定义异常

declare
ex_exception EXCEPTION;    --定义异常
PRAGMA EXCEPTION_INIT(ex_exception , -2292); --给自定义异常进行关联
begin
DELETE FROM departments WHERE department_id = v_deptno;  
  IF SQL%NOTFOUND THEN  
      RAISE ex_exception ;                --抛出  
   END IF;  
EXCEPTION  
   WHEN ex_exception THEN                      --处理  
      DBMS_OUTPUT.PUT_LINE(\'违反数据完整性约束!\');  
   WHEN OTHERS THEN  
      DBMS_OUTPUT.PUT_LINE(SQLCODE||\'---\'||SQLERRM); 
    end;

  

以上是关于SQL随记的主要内容,如果未能解决你的问题,请参考以下文章

sql语法随记

SQL随记

SQL随记

My SQL随记 002 登陆

随记SQL备份一张表的数据

My SQL随记 003 数据表基础操作语法