为了账号安全,请及时绑定邮箱和手机立即绑定

Oracle数据库开发必备利器之PL/SQL基础

难度初级
时长 3小时22分
学习人数
综合评分9.57
114人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.5 逻辑清晰
  • 游标的语法
    查看全部
  • pl/sql的程序结构
    查看全部
  • oracle自动调用pmon(process moniter)
    查看全部
    0 采集 收起 来源:自定义例外

    2015-05-04

  • set serveroutput on declare pename emp.ename%type; begin select ename into pename from emp where empno=1234; exception when no_data_found then dbms_output.put_line('没有找到该员工'); when othes then dbms_output.put_line('其他例外'); end; /
    查看全部
  • 系统异常: Zero_Divide(被零除) Value_error(算数或转化错误) Timeout_on_resource(在等待资源时发生超时,多发生在分布式数据库) Data_not_found Too_many_rows
    查看全部
  • --查询某个部门中员工的姓名 set serveroutput on declare --定义带参数的光标 cursor cemp(dno number) is select ename from emp where deptno=dno; begin open cemp(10); loop fetch cemp into penae; exit when cemp%notfound; dbms_output.put_line(pename); end loop; close cemp; end; /
    查看全部
  • 1光标的属性 %found %notfound %isopen : 判断光标是否打开 %rowcount : 影响的行数 2.光标数的限制:默认情况下,oracle数据库只允许在同一个会话中,打开300个光标 >--切换到管理员,查看数据库初始化设置 >show user >conn sys/password@192.168.56.101:1521/orcl as sysdba >show parameter cursor 修改光标数的限制: alter system set open_cursors=400 scope=both; scope的取值:both(两个同时更改),memory(只更改当前实例,不更改参数文件),spfile(只更改参数文件,不更改当前文件,数据库需要重启) if cemp%isopen then dbms_output.put_line('光标已经打开'); end if; loop --取出一条记录 fetch cemp into pempno,pjob; exit when cemp%notfound; --打印rowcount的值 dbms_output.put_line('rowcount'||cemp%rowcount); end loop;
    查看全部
  • 1.引用型变量 declare --定义引用型变量:查询并打印7839的姓名和薪水 --pname varchar2(20); --psal number; pname emp.ename%type; psal emp.sal%type; begin --得到7839的姓名和薪水,并赋值(PL/SQL一共两种赋值方式) select ename,sal into pname,psal from emp where empno = 7839; --打印姓名和薪水 dbms_output.put_line(pname||'的薪水是'||psal); end; --记录型变量(数组) declare --定义记录型变量:查询并打印7839的姓名和薪水,注意代表一行 emp_rec emp%rowtype; begin --得到7839一行的信息 select * into emp_rec from emp where empno = 7839; --打印姓名和薪水 dbms_output.put_line(emp_rec.ename||'的薪水是'||emp_rec.sal); end;
    查看全部
  • 1、PL/SQL是对sql语言的过程化扩展 2、PL/SQL是面向过程的语言
    查看全部
    0 采集 收起 来源:PL/SQL简介

    2015-05-03

  • set serveroutput on
    查看全部
  • no_data_found、too_many_rows
    查看全部
  • 瀑布模型
    查看全部
  • set serveroutput on declare --定义光标代表给哪些员工涨工资 --alter table "scott"."emp" rename column "job" to empjob cursor cemp is select empno,empjob from emp; pmepno emp.empno%type; pjob emp.empjob%type; begin --rollback;(回退) open cemp; loop fetch cemp into pempno,pjob; exit when cemp%notfound; if pjob = 'PRESIDENT' then update emp set sal=sal+1000 where empno=pempno; elsif pjob = 'MANAGER' then update emp set sal=sal+800 where empno=pempno; else update emp set sal=sal+400 where empno=pempno; end if; end loop; close cemp; --对于oracle,默认的事务隔离级别是read committed; --事务的ACID(原子性、一致性、隔离性、持久性) commit; end; /
    查看全部
  • 循环语句: --while循环打印数字的1~10 set serveroutput on declare --定义循环变量 pnum number := 1; begin while pnum <= 10 loop --循环体 dbms_output.put_line(pnum); --使该变量+1 pnum := pnum+1; end loop; end; / --loop循环打印数字的1~10(推荐) set srveroutput on declare --定义循环变量 pnum number:=1; begin loop --退出条件 exit when pnum>0; --打印该变量的值 dbms_output.put_line(pnum); --循环变量+1 pnum:=pnum+1; end loop; end; / --for循环打印数字1~10 set serveroutput on declare --定义循环变量 pnum number:=1; begin for pnum in 1..10 loop --循环体 dbms_output.put_line(pnum); end loop; end; /
    查看全部
  • 参数打开光标时传入
    查看全部

举报

0/150
提交
取消
课程须知
亲,要学习本门课程只需要熟练使用Oracle的SQL语句就可以了,可以参考慕课网的课程《Oracle数据库开发必备利器之SQL基础》呦!
老师告诉你能学到什么?
1、能够熟练掌握PL/SQL的基本语法 2、能够熟练使用光标和例外 3、能够熟练使用PL/SQL进行开发

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!