-
--成绩统计sql 片段1 set serveroutput on declare --系的光标 cursor cdept is select dno,dname from dep; pdno dep.dno%type; pdname dep.dname&type; --成绩光标 cursor cgrade(coursename varchar2,depno number) is select grade from sc where cno = (select cno from course where cname=coursename) and sno in (select sno from student where dno=depno); pgrade sc.grade%type; --每个分数段的人数 count1 number,count2 number,count3 number; --每个系选修了“大学物理”学生的平均成绩 avggreade number; --课程名称 pcourseName varchar2 := '大学物理';查看全部
-
自定义例外 定义变量,类型是exception 使用raise抛出自定义例外查看全部
-
value_error 算术或者其他转换错误。查看全部
-
Too_many_rows (select....into语句匹配多个行) declare pename emp.ename%type; begin select ename into pename from emp where deptno = 10; exception when too_many_rows then dbms_output.put_line('select into 匹配了多个行'); when others then dbms_output.put_lines('其他异常');查看全部
-
exception when no_data_found then dbms_output.put_line('没有找到该员工'); when others then dbms_output.put_line('其他例外'); //通过others捕获所有的例外查看全部
-
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;查看全部
-
对于oracle,默认的事务隔离级别是 read committed commit;提交 rollback 回滚查看全部
-
1、光标的属性 %found %notfound declare --定义一个光标 cursor cinfo is select i.member_id,i.account_fee from account_info i where i.member_id in (82465,82466,30989,33458); --为光标定义变量 memberid account_info.member_id%type; accountfee account_info.account_fee%type; begin --打开光标 open cinfo; loop --取一条记录 fetch cinfo into memberid,accountfee; --没有取到记录循环退出 exit when cinfo%notfound; dbms_output.put_line(memberid||'的余额是'||accountfee); end loop; end; /查看全部
-
fetch 的作用 -把当前指针指向的记录返回 -将指针指向下一条记录查看全部
-
光标 cursor c1 is select ename from emp; 打开光标 open c1; 关闭光标 close c1; 取一行光标的值 fetch c1 into pename;(取一行到变量中)查看全部
-
for循环语句 1..5 1,2,3,4,5 连续数字 declare pnum number :=1; begin for pnum in 1..5 loop dbms_output.put_line(pnum); end loop; end; /查看全部
-
loop 循环 exit条件成立退出循环,不成立执行循环体 declare pnum number :=1; begin loop exit when pnum >10; dbms_output.put_line(pnum); pnum := pnum+1; end loop; end; /查看全部
-
while 循环 declare pnum number :=1; begin while pnum <=10 loop dbms_output.put_line(pnum); pnum := pnum+1; end loop; end; /查看全部
-
/** 判断用户从键盘输入的数字 1.如何使用if语句 2.接收一个键盘输入 */ set serveroutput on --接收一个键盘输入 --num:地址值,含义是:在该地址上保存了输入的值 accept num prompt '请输入一个数字'; declare --定义变量保存用户从键盘输入的数字 pnum number := #--注意使用&符号获取地址保存的值 begin if pnum =0 then dbms_output.put_line('您输入的数字是0'); elsif pnum=1 then dbms_output.put_line('您输入的数字是1'); elsif pnum=2 then dbms_output.put_line('您输入的数字是2'); else dbms_output.put_line('其他数字'); end if; end; /查看全部
-
IF 语句 if 条件 then 语句; elsif 语句 then 语句; else 语句; end if;查看全部
举报
0/150
提交
取消