码迷,mamicode.com
首页 > 数据库 > 详细

Oracle PL/SQL学习之基础篇(1)

时间:2018-07-17 23:17:43      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:持久   数据类型   别名   cursor   事务   参数传递   oracl   打开   部分   

1、PL/SQL,全称Procedure Language/SQL,过程化sql语言

   PL/SQL的程序结构

declare

   --声明部分(包括变量、光标、例外声明)

begin

  --语句序列(DML语句)

exception

  --例外处理语句

end;

/

2、声明部分

  (1)定义基本变量,类型:char,varchar2,date,number,boolean,long

  (2)变量的赋值方式: :=,into关键字

  (3)引用型变量、记录型变量

        引用型变量:emp_ename  emp.ename%type;

        记录型变量:emp_rec  emp%rowtype;

           select * into emp_rec from emp where eno=7839;

           dbms_ouput.put_line(emp_rec.ename||‘ ‘||emp_rec.sal);--相当于给emp起了个别名

3、程序体部分

   (1)分支语句

          if  条件  then 

              语句序列1;

          elsif   

              语句序列2;

          else

              语句序列3;

          end if;

    (2)循环体

          1)形式1

while i<=10 loop
  i :=i+1;
end loop;

         2)形式2

loop
exit when 条件;
......
end loop;

        3)形式3

for i in 1..10 loop
   语句序列;
end loop;

4、光标/游标,其实是结果集

    基本格式:cursor 光标名 [(参数名 数据类型 [,参数名 数据类型])...]

                      is select  语句;

    属性:%found、%notfound   --是否有记录

     %isopen      --判断光标是否打开

     %rowcount  --影响的行数

    光标数限制:

       在sqlplus中连接sys用户

       conn  sys/password@127.0.0.1:1521/orcl as sysdba

     查看配置参数:

       show parameter cursor

       技术分享图片

     修改光标数的设置:

       alter system set open_cursors=400 scope=both;

       scope的取值:both,memory(只更改当前实例,不更改参数文件),spfile(只更改参数文件,不更改当前实例,并且数据库需要重启)

     带参数的光标,在open的时候,将参数传递给光标。

5、fetch抓取一行记录

fetch 光标名 into 字段1,字段2...;--与open光标时候的字段对应

6、事务:原子性、一致性、隔离性、持久性

Oracle PL/SQL学习之基础篇(1)

标签:持久   数据类型   别名   cursor   事务   参数传递   oracl   打开   部分   

原文地址:https://www.cnblogs.com/ZeroMZ/p/9315738.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!