打印本文 打印本文 关闭窗口 关闭窗口
几十个实用的PL/SQL(1)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2995  更新时间:2007/11/14 11:02:36  文章录入:mintao  责任编辑:mintao

这是我在ACCP学习的QA,觉得对初学者很有帮助,贴出。

----

第一阶段

Q.编写一个PL/SQL程序块以显示所给出雇员编号的雇员的详细信息。

A.

 DECLARE

       erec emp%ROWTYPE;

BEGIN

       SELECT * INTO erec FROM emp        WHERE empno=&雇员编号;

       DBMS_OUTPUT.PUT_LINE(''''EmpNo'''' || '''' '''' || ''''Ename'''' || '''' ''''|| ''''Job'''' || '''' '''' || ''''Manager'''' || '''' '''' || ''''HireDate'''' || '''' '''' || ''''Salary'''' || '''' '''' || ''''Commision'''' || '''' '''' || ''''DeptNo'''');

       DBMS_OUTPUT.PUT_LINE(erec.ename || '''' '''' || erec.job || ''''  '''' || erec.mgr || ''''  '''' ||erec.hiredate || ''''  '''' || erec.sal || ''''  '''' || erec.comm || ''''  '''' || erec.deptno);

END;

/

Q.编写一个PL/SQL程序块以计算某个雇员的年度薪水总额。

A.

DECLARE

       esal NUMBER;

       eename emp.ename%TYPE;

BEGIN

       SELECT (NVL(sal,0)+NVL(comm,0))*12,ename INTO esal,eename FROM emp WHERE empno=&雇员编号;

       DBMS_OUTPUT.PUT_LINE(eename || ''''''''''''s Years Salary is '''' || esal);

END;

/

Q.按下列加薪比执行:

  Deptno       Raise(%age)

10    5%

20    10%

30    15%

40    20%

加薪的百分比是以他们现有的薪水为根据的。写一PL/SQL以对指定雇员加薪。

A.

DECLARE

       vcounter NUMBER:=10;

       vraise NUMBER;

BEGIN

       LOOP

        &n

[1] [2] [3]  下一页

打印本文 打印本文 关闭窗口 关闭窗口