oracle块如何理解 oracle 块结构

什么是ORACLE程序块?

举个例子给你说明吧:

创新互联建站-成都网站建设公司,专注网站设计制作、成都做网站、网站营销推广,域名注册,网络空间,网站运营有关企业网站制作方案、改版、费用等问题,请联系创新互联建站

1.编写PL程序块循环给scott.emp表中所有职工增加工资,每次增加100元,直到平均工资高于5000或任一职工的工资超过6000元为止,最后显示出给所有员工一共增加了多少工资。

2.编写一个PL块,定义一个静态游标存储scott.emp表中所有雇员的员empno、ename和sal,并使用循环打印出所有数据。

3.编写一个存储过程comSalary,分别统计储scott.emp表中所有部门的平均工资,并且只显示出工资超过3500的部门。并编写pl块调用此存储过程。

1.

declare

avg_sal number;

max_sal number;

i integer;

begin

i:=0;

loop

select avg(sal),max(sal) into avg_sal,max_sal from emp;

if avg_sal=5000 and max_sal=6000 then

update emp set sal=sal+100;

i:=i+1;

else

exit;

end if;

end loop;

commit;

dbms_output.put_line('共增加工资:'||to_char(i*100));

end;

2.

declare

cursor c1 is select empno,ename,sal from emp;

begin

for acct in c1 loop

dbms_output.put_line('员工号:'||acct.empno||' 员工姓名:'||acct.ename||' 工资:'||acct.sal);

end loop;

end;

3.

create or replace procedure comSalary

as

cursor c1 is

select deptno,avg(sal) avg1 from emp group by deptno;

begin

for acct in c1 loop

if acct.avg1 3500 then

dbms_output.put_line('部门:'||acct.deptno||' 工资:'||acct.avg1);

end if;

end loop;

end;

其实Oracle程序块,是基于oracle编程的范畴,相当于本来希望通过用其他语言写程序对oracle数据库进行操作的功能,直接放在oracle数据库内部去执行了一样。可以跟存储过程一样理解。

ORACLE中,数据块的概念(越详细越好)

数据块是数据库中最小的数据存储单位,用户再对数据库执行输入输出操作时就是从数据块读取的。在oracle11g中,数据块分为头部信息区和存储区,头部信息区不存放数据,但是存放有关存储区中表数据、索引数据的的相关信息起到引导的作用则存储区真正存放数据记录。

标题 你认为在安装Oracle时,指定多大的数块会比较合理?为什么?

块的标准大小由初始化参数DB_BLOCK_SIZE指定。具有标准大小的块称为标准块(StandardBlock)。块的大小和标准块的大小不同的块叫非标准块(NonstandardBlock)。同一数据库中,Oracle9i及以上版本支持同一数据库中同时使用标准块和非标准块。Oracle允许指定5种非标准块(NonstandardBlock)。

数据块(OracleDataBlocks),本文简称为“块”,是Oracle最小的存储单位,Oracle数据存放在“块”中。一个块占用一定的磁盘空间。特别注意的是,这里的“块”是Oracle的“数据块”,不是操作系统的“块”。

Oracle每次请求数据的时候,都是以块为单位。也就是说,Oracle每次请求的数据是块的整数倍。如果Oracle请求的数据量不到一块,Oracle也会读取整个块。所以说,“块”是Oracle读写数据的最小单位或者最基本的单位。


名称栏目:oracle块如何理解 oracle 块结构
URL分享:http://azwzsj.com/article/hgcigd.html