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   

 

posted on 2018-07-12 16:42  亮晶晶的小宇宙  阅读(173)  评论(0编辑  收藏  举报