美高梅游戏官网娱乐_美高梅手机登录网站

美高梅游戏官网娱乐是公司推出的企业级即时在线娱乐平台,美高梅手机登录网站业界专业、信誉最好的博彩网站,美高梅游戏官网娱乐拥有最高优惠活动和返水,拥有丰富的管理经验和专业的技术队.。

来自 数据库 2019-12-22 15:02 的文章
当前位置: 美高梅游戏官网娱乐 > 数据库 > 正文

貌似运算符和逻辑运算符,关于Oracle数据库各种

Oracle数据库各类控制语句的使用是本文我们主要要介绍的内容,包括一些逻辑控制语句、Case when的使用、While的使用以及For的使用等等,接下来我们就开始一一介绍这部分内容,希望能够对您有所帮助。

PL/SQL编程,plsql编程

Oracle 中逻辑控制语句

PL/SQL编程

If elsif else end if set serverout on; declare per_dep_count number; begin select count into per_dep_count from emp; if per_dep_count>0 then dbms_output.put_line; elsif per_dep_count>5 then --elsif not elseif!!!!  dbms_output.put_line; else dbms_output.put_line; end if; end; 

一:什么是PL/SQL

(1.)PL/SQL体系结构:
         PL/SQL引擎用来编译和执行,PL/SQL块或子程序,该引擎驻留在Oracle服务器中。

(2.)PL/SQL块简介

         PL/SQL是一种块结构语音,它将一组语句块放在一个快中。

(3.)运算符和表达式:

PL/SQL语音支持操作符包含关系运算符,一般运算符和逻辑运算符,与SQL语音类似。

(4.)常量和变量声明

         在PL/SQL块的可执行部分引用变量和常量前,必须先对其进行声明。变量和PL/SQL块的部分声明,在PL/SQ块的 可执行部分被使用。语法如下:

Variable_name  data_type   变量范围    变量的初始值;

(5.)注释:

         在PL/SQL可以使用如下两种注释符号:

         ‘--’双减号

         ‘/*   */’

 

         在PL/SQL快中的可执行部分引用的变量和常量前,必须先对其声明

语法:variable_name  data_type[(size)][:=init_value];

变量名称  数据类型   size  指定变量的初始值

 

Case when 的使用的两种方式 :

二:PL/SQL数据类型

(1.)LOB数据类型

(2.)属性类型:

%Type:定义一个变量,其数据类型与已经定义的某个数据变量(尤其是表的某一列)的数据类型相一致这时可以使用%Type (优点:可以不必知道所引用的数据库列的数据类型。所引用的数据类型可以实现时改变,容易保持一致,不必修改PL/SQL程序)    

%ROWTYPE:返回一个记录类型,其数据类型和数据库表的数据结构相一致,这时可以使用%ROWTYPE.(优点:可以不必知道所引用数据库列的个数和数据类型。所引用的数据库中列的个数和数据库类型可以实现改变,容易保持一致,不用修改PL/SQL程序)

declare per_dep_count number; begin select count into per_dep_count from emp; case per_dep_count when 1 then dbms_output.put_line; when 2 then dbms_output.put_line; else dbms_output.put_line; end case; end; 

declare per_dep_count number; begin select count into per_dep_count from emp; case when per_dep_count=1 then dbms_output.put_line; when per_dep_count=2 then dbms_output.put_line; else dbms_output.put_line; end case; end; 

三:PL/SQL控制语句

(1.)条件控制:if语句如下:

         If   布尔表达式   then

 PL/SQL和SQL语句

End  if;


If   布尔表达式   then

 PL/SQL和SQL语句

Elst

   其他语句

End  if;


If   布尔表达式   then

 PL/SQL和SQL语句

Elsif  其他布尔表达式   then

         其他语句

Elsif   其他布尔表达式   then

Else

         其他语句

End  if;

 

(2.)case  语法如下

----------------格式1----------------

Case   条件表达式

When  条件表达式1  then

语句段1

When   条件表达式2   then

语句段2

…………….

When   条件表达式n   then

语句段n

End    case;

----------------格式2----------------

Case   条件表达式

When  条件表达式1  then

语句段1

When   条件表达式2   then

语句段2

…………….

When   条件表达式n   then

语句段n

Else  语句段

End    case;

(3.)循环控制:Loop循环语法如下:

         Loop

                   要执行的语句;

                   Exit  when  条件语句   -------条件满足时跳出循环

                   End   loop;


While循环语法如下:

  While    布尔表达式  loop

要执行的语句;

End  loop;


For循环语法如下

For  循环计数器  In  reverse   下限…….上限   loop

要执行的语句

End   loop;

While 的使用

四:异常处理:

(1.)预定义异常:

 

(2.)处理用户自定义异常:

在PL/SQL块的定义部分定义的异常情况

    异常情况    exceptlon

抛出异常情况:

Raise  异常情况

在PL/SQL块的异常情况处理部分对异常情况做出的相应处理

declare v_id number:=0; begin while v_id<5 loop v_idv_id:=v_id+1; dbms_output.put_line; end loop; end; 

五:游标:

(1.)游标的分类

隐式游标:返回单行记录

显示游标:返回多行记录

显示游标使用步骤:

(1.)声明游标:cursor  名称  is

(2.)打开游标:open   名称;

(3.)提取游标:fetch   名称   into  variables;

(4.)关闭游标: close   名称;

(5.)使用循环游标简化游标的读取语法:

For   声明记录变量   in   名称

Loop

         Executable_statements

End  loop;

(4.)No_data_found和notfound的区别

         Select………into语句返回0条记录和多条记录是触发no_data_found

         当update或delete语句的where子句未找到时,触发%notfound

         在提取循环中用%notfound或%found来确定循环的退出条件,而不用no_data_fuond

For的使用

六:存储过程:

子程序的组成:

(1.)声明部分:类型,游标,常量,变量,异常,嵌套子程序声明

(2.)可执行部分:可执行部分包括赋值,控制执行过程存储过程中出现的异常

(3.)异常处理部分:异常处理程序,负责处理执行存储过程中出现的异常。

子程序的优点如下:

模块化,可重用性,可维护性,安全性。

(4.)存储过程用法:

1.创建存储过程:语法如下:

Create    语句    procedure    存储名称

                   参数列表

Is|as

         局部声明

Begin  

         可执行语句
exception

         异常处理程序

End    存储名称;

2.调用存储过程

(1.)用命令调用

语法如下:

Exce     过程名称   参数列表;

(2.)参数的传递方式三种:

按位置传递

Exec  add_emp(1111,‘mary’,2000,’‘manager’,10);

按名称传递

 

混合方式传递

3.存储过程参数模式语法如下:

存储名称   in|out|in  out   datatype   :=赋值;

4.存储过程访问权限

-----授予a执行emp的权限

Grant  execute  no   add_emp   to   a

-------撤销权限

Revoke   execute  on  add_emp   from   a;

5.删除存储过程

Drop   procedure   存储名称;

declare v_id number:=0; begin for v_id in 1..5 loop dbms_output.put_line; end loop; end; 

七:存储过程的调试与跟踪:

(1.)在sql*plus下调试

(2.)用户PL/SQL  Developer工具调试

其中on_flag有三种情况:

*0表示过程执行成功但无提示信息。

*大于0表示过程执行成功但有提示信息。

*小于1表示过程执行失败且有提示信息。

PL/SQL编程 一:什么是PL/SQL (1.)PL/SQL体系结构: PL/SQL引擎用来编译和执行,PL/SQL块或子程序,该引擎驻留在Oracle服务...

关于Oracle数据库各类控制语句的使用就介绍到这里了,希望本次的介绍能够对您有所收获!

本文由美高梅游戏官网娱乐发布于数据库,转载请注明出处:貌似运算符和逻辑运算符,关于Oracle数据库各种

关键词: