plsq程序设计--sql语句

PLSQL中的sql语句只能返回一条记录,而且必须返回一条记录

示例:
--查询记录
declare
  v_ename emp.ename%type;
  v_sal emp.sal%type;
begin
  select ename,sal into v_ename,v_sal from emp where empno = 7369;
  dbms_output.put_line(v_ename || ' ' || v_sal);
end;


--查询记录
declare
  v_emp emp%rowtype;
begin
  select * into v_emp from emp where empno = 7369;
  dbms_output.put_line(v_emp.ename);
end;


--插入记录
declare
  v_deptno dept.deptno%type := 50;
  v_dname dept.dname%type := 'aaa';
  v_loc dept.loc%type := 'bj';
begin
  insert into dept values (v_deptno, v_dname, v_loc);
  commit;
end;


得到oracle更新记录数

declare
  v_deptno emp.deptno%type := 10;
  v_count number;
begin

  --执行后,显示实际被更新记录数
  --update emp2 set sal = sal/2 where deptno = v_deptno;
  
  --只会显示影响一条语句,并不是影响了7369这条记录,而是他要取出一个值放到变量中去,影响了一条记录
  --select deptno into v_deptno from emp2 where empno = 7369;
  
  --显示影响一条记录
  --select count(*) into v_count from emp2;
  
  --sql%rowcount获得被影响记录数
  dbms_output.put_line(sql%rowcount || '条记录被影响');
  commit;
end;

你可能感兴趣的:(oracle,sql)