2018-07-1216:41:19
1 六、匿名块 2 1、定义匿名块: 3 declare 4 定义部分; ---可选部分 5 begin 6 执行部分; ---必选部分 7 exception 8 异常处理部分; ---可选部分 9 end; 10 11 ---往控制台输出hello world 12 begin 13 dbms_output.put_line('hello world'); 14 end; 15 ---打开控制台输出开关 F5 16 set serveroutput on; 17 18 19 ---定义变量,赋值给变量,输出变量值 20 ---; 21 declare 22 v_id number(3); 23 begin 24 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 begin 33 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 begin 49 select ename,sal into v_name,v_sal from emp where empno=&no; 50 dbms_output.put_line(v_name||','||v_sal); 51 exception 52 when no_data_found then 53 dbms_output.put_line('对不起,你输入的用户不存在'); 54 end; 55 56 ---%type:使用数据库中某一列的数据类型做为变量的数据类型 57 语法;表名.列名%type 58 59 declare 60 v_name emp.ename%type; 61 v_sal emp.sal%type; 62 begin 63 select ename,sal into v_name,v_sal from emp where empno=&no; 64 dbms_output.put_line(v_name||','||v_sal); 65 exception 66 when no_data_found then 67 dbms_output.put_line('对不起,你输入的用户不存在'); 68 end; 69 70 71 ---%rowtype:行数据,使用数据库中某一个表的一行为数据类型 72 declare 73 v_emp emp%rowtype; 74 begin 75 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