pl/sql属性类型

pl/sql

属性类型

%TYPE - 引用变量和数据库列的数据类型
%ROWTYPE - 提供表示表中一行的记录类型

显示输出scott.emp表中的部分数据

declare 

   emp_number constant number(4):=7876;
   emp_name  varchar2(10);
	 emp_job  varchar2(9);
	 emp_sal  number(7,2);
begin
	select ename,job,sal
	   into emp_name,emp_job,emp_sal
		 from scott.emp where empno = emp_number;
		 dbms_output.put_line('查询的员工号为'||'---->'||emp_number);
      dbms_output.put_line('该员工名为'||'---->'||emp_name);
			 dbms_output.put_line('该员工职位为'||'---->'||emp_job);
			  dbms_output.put_line('该员工工资为'||'---->'||emp_sal);

end;  

查询的员工号为---->7876
该员工名为---->ADAMS
该员工职位为---->CLERK
该员工工资为---->1100

%TYPE使用举例


declare
    emp_number number(4):=7876;
		emp_name scott.emp.ename%type;
		emp_job scott.emp.job%type;
		emp_sal scott.emp.sal%type;

begin
	  select ename,job,sal
		into emp_name,emp_job,emp_sal
		from scott.emp where empno = emp_number;
		 dbms_output.put_line('查询的员工号为'||'---->'||emp_number);
      dbms_output.put_line('该员工名为'||'---->'||emp_name);
			 dbms_output.put_line('该员工职位为'||'---->'||emp_job);
			  dbms_output.put_line('该员工工资为'||'---->'||emp_sal);

end;  

使用PL/SQL语言,统计xs表中同学的个数并显示出来

declare 

  v_1 number;
begin
	select count(*) into v_1 from xs;
	dbms_output.put_line(v_1);
	
	exception 
		when others then 
			dbms_output.put_line('出现异常了!!!');

end; 

%ROWTYPE复合数据类型

declare

    one_emp scott.emp%rowtype;
begin
	select * into one_emp
	  from scott.emp where empno =7900;
		 dbms_output.put_line('该员工职位为'||'---->'||one_emp.job);
			  dbms_output.put_line('该员工工资为'||'---->'||one_emp.sal);
		
end;


该员工职位为---->CLERK
该员工工资为---->950

变量名 数据表.列名%type
变量名 数据表%rowtype。

上一篇:Command line is too long问题解决


下一篇:Sed的多行模式学习笔记