前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Oracle的dbms_output和循环

Oracle的dbms_output和循环

原创
作者头像
织幻妖
发布2022-06-20 22:44:15
1K0
发布2022-06-20 22:44:15
举报

1.dbms_output的三种用法

a、put:将内容写到内存,等到put_line时一起输出

b、put_line:输出字符

c、new_line:作为一行的结束,可以理解为写入buffer时的换行符

案例如下:

代码语言:javascript
复制
begin
   dbms_output.put('写入buffer但不输出'); --写入buffer但不输出
   dbms_output.new_line; --回车(换行),输出                              
   dbms_output.put_line('输出并换行'); --输出并换行 
   dbms_output.put('写入buffer但不输出'); --写入buffer但不输出 
end;  

输出:

代码语言:javascript
复制
写入buffer但不输出
输出并换行

2.buffer

在oracle数据文件中最小的单位就是block, 而用户读取block数据时,oracle就会将block的数据放入缓存,那么缓存中对应block的单位就叫buffer了, block的大小与buffer大小是一样的.

buffer的默认值是20000bytes,可设置的最小值为2000bytes,最大值为1000000bytes。

3.Oracle循环

1.for循环

代码语言:javascript
复制
--for循环
declare
begin
  dbms_output.put_line('九九乘法表');
  for i in 1..9
  loop
    for j in 1..i
    loop
      dbms_output.put( j|| '*' || i || '=' || j*i || ' ');
    end loop;
    dbms_output.new_line;
  end loop;
end;

2.while循环

代码语言:javascript
复制
--while 循环
declare
  i int:=0; --声明变量
  j int:=0;
begin
  dbms_output.put_line('九九乘法表');
  while i<=9 loop
    j:=1;
    while j<=i
    loop
      dbms_output.put(i||'*'||j||'='||i*j||' ');
      j:=j+1;
    end loop;
    dbms_output.new_line;
    i:=i+1;
  end loop;
end;

3.loop循环

代码语言:javascript
复制
--loop循环(相当于do...while)
declare
  i int:=1;
  j int:=1;
begin
  dbms_output.put_line('九九乘法表');
  loop
    loop
      Dbms_Output.put(i||'*'||j||'='||i*j);
      dbms_output.put(' ');
      j:=j+1;
      exit
    when j>i;
    end loop;
    dbms_output.put_line('');
    i:=i+1;
    j:=1;
    exit
  when i>9;
  end loop;
end;

上面三个循环的输出结果都是:

代码语言:javascript
复制
九九乘法表
1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.dbms_output的三种用法
  • 2.buffer
  • 3.Oracle循环
    • 1.for循环
      • 2.while循环
        • 3.loop循环
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档