Oracle数据库语句块

2025-10-13 13:25:42

1、先给之前经验中创建的Oracle数据表插入数据值。

Oracle数据库语句块

Oracle数据库语句块

2、编写PL/SQL语句块,使用LOOP循环计算1+3+5+7…+99的值。

declare

   i integer:= 1;

   s integer:=0;

begin

   loop

   s:=s+i;

   i:=i+2;

   exit when i>99;

   end loop;

   dbms_output.put_line('1+3+5+7...+99='||s);

end;

Oracle数据库语句块

3、编写PL/SQL语句块,输出1到100之间能被五整除的数,并统计有多少个这样的数。

declare

   s integer:= 1;

   i integer:= 0;

begin

   while s<=100 loop

   if mod (s,5)=0 then

   dbms_output.put_line(s);

   i:=i+1;

   end if;

   s:=s+1;

   end loop;

   dbms_output.put_line('一共有'||i);

end;

Oracle数据库语句块

4、求-125的绝对值;求225的开方

Oracle数据库语句块

5、统计字符串“信息技术学院”字符的个数。

从字符串“什么什么信息职业技术学院”的第7个位置开始连续取4个字符。

begin

   dbms_output.put_line('-125的绝对值:'|| abs(-125));

   dbms_output.put_line('225的开方为:'|| sqrt(225));

   dbms_output.put_line('字符串“信息技术学院”字符的个数:'|| length('信息技术学院'));

   dbms_output.put_line('将字符串“什么什么信息职业技术学院”的第7个位置开始连续取4个字符:' || substr('什么什么信息职业技术学院','7','4'));

end;

Oracle数据库语句块

6、编写PL/SQL语句块,统计字符串’ASjied*&$@123dioQQ##!’中大写字母、小写字母以及其他字符的个数。

declare

     str1  char(30);

     c  char(1);

     i  number;

     len  number;

     n  number;

     S NUMBER:=0;

     H NUMBER:=0;

     T NUMBER:=0;

begin

    str1:='ASjied*&$@123dioQQ##!';

    n:=0;

     i:=1;

     len:=length(str1); 

     loop

         c:=substr(str1,i,1); 

         if c>='A'AND c<='Z'  then   

             S:=S+1;

           ELSIF c>='a' AND c<='z' then

            H:=H+1;

            ELSE

            T:=T+1;

         end if;

         i:=i+1; 

        exit when i>len; 

     end loop;

   dbms_output.put_line(S);

    dbms_output.put_line(H);

     dbms_output.put_line(T);

end;

Oracle数据库语句块

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢