2018-07-1216:41:19
1 六、匿名块 2 1、定义匿名块: 3 declare 4 定义部分; ---可选部分 5 begin 6 执行部分; ---必选部分 7 exception 8 异常处理部分; ---可选部分 9 end;10 11 ---往控制台输出hello world12 begin13 dbms_output.put_line(‘hello world‘);14 end;15 ---打开控制台输出开关 F516 set serveroutput on;17 18 19 ---定义变量,赋值给变量,输出变量值20 ---;21 declare22 v_id number(3);23 begin24 v_id:=1;25 dbms_output.put_line(v_id);26 end; 27 28 ---查询数据库表中的数据输出到控制台29 declare 30 v_name varchar2(20);31 v_sal number(7,2);32 begin33 select ename,sal into v_name,v_sal from emp where empno=7788;34 dbms_output.put_line(v_name||‘,‘||v_sal);35 end;36 37 &:调出输入框接收输入的数据。38 ---查询指定员工的薪水39 select sal from emp where empno=&no;40 41 ---输入字符串类型42 select * from emp where upper(ename)=UPPER(‘&name‘);43 44 45 declare 46 v_name varchar2(20);47 v_sal number(7,2);48 begin49 select ename,sal into v_name,v_sal from emp where empno=&no;50 dbms_output.put_line(v_name||‘,‘||v_sal);51 exception52 when no_data_found then53 dbms_output.put_line(‘对不起,你输入的用户不存在‘);54 end;55 56 ---%type:使用数据库中某一列的数据类型做为变量的数据类型57 语法;表名.列名%type58 59 declare 60 v_name emp.ename%type;61 v_sal emp.sal%type;62 begin63 select ename,sal into v_name,v_sal from emp where empno=&no;64 dbms_output.put_line(v_name||‘,‘||v_sal);65 exception66 when no_data_found then67 dbms_output.put_line(‘对不起,你输入的用户不存在‘);68 end;69 70 71 ---%rowtype:行数据,使用数据库中某一个表的一行为数据类型72 declare 73 v_emp emp%rowtype;74 begin75 select * into v_emp from emp where empno=&no;76 dbms_output.put_line(v_emp.empno||‘,‘||v_emp.ename);77 end;78 79 80 81