⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 黄松平612.txt

📁 关于oracle和sql的书籍和ppt教程,非常好,本人珍藏品
💻 TXT
字号:
create or replace package body hsp_package
is

  function output_sum(num int)
  return int
  is
   v_i int:=0;
   v_sum int:=0;

  begin
    if num<0 then
      for v_i in num .. 0 loop
        v_sum:=v_sum+v_i;
      end loop;
    else
      for v_i in 0..num loop
        v_sum:=v_sum+v_i;
      end loop;
    end if;
    dbms_output.put('the sum is'||v_sum);
    return v_sum;
  end output_sum;

 
  function check_emp(v_empno emp.empno%type)
  return number
  is
   v_flag number;
  begin
  select count(*)into v_flag from emp where empno=v_empno;
  if v_flag>0 then
   v_flag:=1;
  end if;
  return v_flag;
  end check_emp;



  function output_sal(v_empno emp.empno%type)
  return emp.sal%type
  is
  v_sal emp.sal%type;
  begin
    if check_emp(v_empno)=1then
      select sal into v_sal from emp where empno=v_empno;
    end if;
    return v_sal;
  exception
   when others then
     v_sqlcode:=sqlcode;
     v_sqlerrm:=sqlerrm;
  end output_sal;


  procedure  update_emp_hsp(v_empno emp.empno%type,v_sal emp.sal%type)
  is
  begin
    if check_emp(v_empno)=1 then
       update emp set sal=v_sal where empno=v_empno;
    end if;
  exception
    when others then
      v_sqlcode:=sqlcode;
      v_sqlerrm:=sqlerrm;
  end update_emp_hsp;


begin
   v_sqlcode:=null;
   v_sqlerrm:='初始化文本消息';

end hsp_package;


2
create or replace trigger hsp_tri
instead of insert
on hsp_view
for each row
declare
v_count number;
max_id number;
begin
 select count(*)into v_count from hsp_temp ;
 if v_count=0then 
insert into hsp_temp values(:new.name,:new.age ,1);
else
  select max(id)into max_id from hsp_temp ;
  max_id:=max_id+1;
  insert into hsp_temp values(:new.name,:new.age ,max_id);
 end if;
end;
4



5
SQL
查询当前用户下所有对象
select * from tab;
建立一个表
create table a(a number);
查询表结构
desc a
插入新记录
insert into a values(1);
查询记录
select * from a;
更改记录
update a set a=2;
删除记录
delete from a;
修改表结构
alter table STUDENT modify ID int;
alter table STUDENT add zhuce date;
alter table STUDENT drop column zhuce;
alter table student add constraint pk_stu_id primary key(id);

事物控制

汇总函数:
COUNT:返回满足WHERE 条件子句中记录的个数。
SUM:它返回某一列的所有数值的和。
AVG:可以返回某一列的平均值。
MAX:如果你想知道某一列中的最大值请使用MAX。
MIN:MIN 与MAX 类似它返回一列中的最小数值

PL/SQL 

    PL/SQL 块的基本结构:
  DECLARE 

  BEGIN 

  EXCEPTION 

  END


   数据类型
       NUMBER
       CHAR
       VARCHAR2
       BOOLEAN
       DATE
       LOB
       %TYPE
       %ROWTYPE
       RECORD
       TABLE

   

PL/SQL中的控制语句:

    (1)条件语句
       IF condition1 THEN
         statement1;
       ELSIF condition2 THEN
         statement2;
       ELSE
         statement3;
       END IF

    (2)循环语句:
    LOOP
           statement1;
    END LOOP
    FOR 循环
    WHILE循环

    游标
    存储过程/函数(Procedure/Function)
    程序包(Package):程序包说明,程序包体
    触发器(Triggers)
   






⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -