Oracle学习基础(四)总结

复习:

--使用Oracle来模拟ID的自增长

--创建序列
create sequence seq_test1;
--创建表
create table test2(
     tid number primary key,
     tname varchar2(10)
);

--tid自增长插入
insert into test2 values(seq_test1.nextval,'张山');

select * from test2;

--删除表
drop table test2;
/*
     PLSQL编程:过程语言,编写一些复杂业务逻辑。
     
     输出星号:
             abs(x)+abs(y)<=m
             
      vsal emp.sal%type;--引用型变量
      vrow emp%rowtype;--记录型变量
      
      select sal into vsal from emp where empno=7788;


*/
--使用abs()函数输出菱形
declare
m number :=5;
begin
  for y in -m..m loop
    for x in -m..m loop
      if abs(x)+abs(y)<=m then
        dbms_output.put('*');
        else
          dbms_output.put(' ');
        end if;
      end loop;
      
      dbms_output.new_line();--此处必须new_line让缓存输出,不然,循环的输出内容不会显示,会在缓存里的同一行。
    end loop;
end;



游标:用来操作查询结果集,相当于是JDBC的ResultSet
    语法:cursor  游标名[(参数名  参数类型)]  is  查询结果集
    
    开发步骤:
             1.声明游标
             2.打开游标   open  游标名
             3.从游标中取数据:fetch 游标名 into 变量
                         游标名%found  找到数据
                         游标名%notfound 没有找到数据
             4.关闭游标          close 游标名
             

     系统引用游标:
             1.声明游标:游标名 sys_refcursor
             2.打开游标:open 游标名 for 结果集
             3.从游标中取值
             4.关闭游标
     for循环遍历游标:
             不需要声明额外变量
             不需要打开和关闭游标
             

--输出员工表的所有员工的姓名和工资(不带参数游标)
/*
   游标:所有员工
   声明一个变量,用来记录每一行的数据  %rowtype
*/

declare
   cursor crow is select * from scott.emp;
   vrow scott.emp%rowtype;
begin
  open crow;
  loop
    fetch crow into vrow;
  exit when  crow%notfound;
     dbms_output.put_line('姓名:'||vrow.ename||'工资:'||vrow.sal);
     
  end loop;
  close crow;
end;

--先创建一个此用户下emp表,方便使用。
create table emp as select * from scott.emp;
select * from emp;

--带参数游标的使用
----查
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值