`
cakin24
  • 浏览: 1397076 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

光标实现为员工涨工资

阅读更多

一 需求

给员工职位涨工资,总裁涨1000,经理涨800,其他员工涨400
二 设计(伪代码)
ResultSet rs = "select  empno,job from emp";
while(re.next())
{
    int eno =rs.getInt("empno");
    String job = rs.getString("job");
    if(“PERSIDENT”.equals ( job))
    {
        update emp set sal = sal +1000 where empno = eno;
    }
    else if(“MANAGER”.equals ( job))
    {
        update emp set sal = sal +800 where empno = eno;
    }
    else
    {
        update emp set sal = sal +400 where empno = eno;
     }
}
三 涨工资前数据
  1. SQL>select*from emp;
  2. EMPNO ENAME EMPJOB MGR HIREDATE SAL COMM DEPTNO
  3. -----------------------------------------------------------------------------------
  4. 7369 SMITH CLERK 790217-12月-80240020
  5. 7499 ALLEN SALESMAN 769820-2-81320030030
  6. 7521 WARD SALESMAN 769822-2-81285050030
  7. 7566 JONES MANAGER 783902-4-81617520
  8. 7654 MARTIN SALESMAN 769828-9-812850140030
  9. 7698 BLAKE MANAGER 783901-5-81605030
  10. 7782 CLARK MANAGER 783909-6-81565010
  11. 7788 SCOTT ANALYST 756619-4-87460020
  12. 7839 KING PRESIDENT 17-11月-81900010
  13. 7844 TURNER SALESMAN 769808-9-813100030
  14. 7876 ADAMS CLERK 778823-5-87270020
  15. EMPNO ENAME EMPJOB MGR HIREDATE SAL COMM DEPTNO
  16. -----------------------------------------------------------------------------------
  17. 7900 JAMES CLERK 769803-12月-81255030
  18. 7902 FORD ANALYST 756603-12月-81460020
  19. 7934 MILLER CLERK 778223-1-82290010
  20. 已选择14行。
 
四 代码
  1. --给员工职位涨工资
  2. set serveroutput on
  3. declare
  4. --定义一个光标代表给哪些员工涨工资
  5. cursor cemp isselect empno,empjob from emp;
  6. --为光标定义对应的变量
  7. pempno emp.empno%type;
  8. pjob emp.empjob%type;
  9. begin
  10. --打开光标
  11. open cemp;
  12. loop
  13. --取一个员工
  14. fetch cemp into pempno,pjob;
  15. exitwhen cemp%notfound;
  16. --判断员工职位
  17. if pjob ='PRESIDENT'then update emp set sal =sal +1000where empno = pempno;
  18. elsif pjob ='MANAGER'then update emp set sal =sal +800where empno = pempno;
  19. else update emp set sal =sal +400where empno = pempno;
  20. endif;
  21. end loop;
  22. --关闭光标
  23. close cemp;
  24. --对于oracle,默认的事务隔离级别是read committed
  25. --事务ACID
  26. commit;
  27. dbms_output.put_line('涨工资完成');
  28. end;
  29. /
 
五 涨工资后数据
  1. SQL>select*from emp;
  2. EMPNO ENAME EMPJOB MGR HIREDATE SAL COMM DEPTNO
  3. -----------------------------------------------------------------------------------
  4. 7369 SMITH CLERK 790217-12月-80280020
  5. 7499 ALLEN SALESMAN 769820-2-81360030030
  6. 7521 WARD SALESMAN 769822-2-81325050030
  7. 7566 JONES MANAGER 783902-4-81697520
  8. 7654 MARTIN SALESMAN 769828-9-813250140030
  9. 7698 BLAKE MANAGER 783901-5-81685030
  10. 7782 CLARK MANAGER 783909-6-81645010
  11. 7788 SCOTT ANALYST 756619-4-87500020
  12. 7839 KING PRESIDENT 17-11月-811000010
  13. 7844 TURNER SALESMAN 769808-9-813500030
  14. 7876 ADAMS CLERK 778823-5-87310020
  15. EMPNO ENAME EMPJOB MGR HIREDATE SAL COMM DEPTNO
  16. -----------------------------------------------------------------------------------
  17. 7900 JAMES CLERK 769803-12月-81295030
  18. 7902 FORD ANALYST 756603-12月-81500020
  19. 7934 MILLER CLERK 778223-1-82330010
  20. 已选择14行。
1
0
分享到:
评论

相关推荐

    C++五子棋 类实现,支持光标操作

    【标题】"C++五子棋 类实现,支持光标操作"揭示了这是一个基于C++编程语言实现的五子棋游戏。在这个项目中,开发者利用面向对象编程的思想,通过类来构建五子棋游戏的核心逻辑。类是C++中封装、继承和多态性的基础,...

    对光标坐标进行实时监控

    光标坐标通常以屏幕像素为单位,表示光标在屏幕上的精确位置。实时监控光标坐标,就是记录并分析光标在屏幕上移动时的X和Y轴坐标值。 实现对光标坐标进行实时监控的核心技术是安装全局鼠标钩子(Global Mouse Hook...

    VC 实现限制光标的位置

    在VC++编程环境中,我们有时需要对用户的鼠标光标进行控制,确保它只能在特定的区域活动,这种功能在设计特殊界面或者游戏时尤为常见。本文将深入探讨如何使用VC++来实现光标位置的限制。 首先,我们需要理解...

    炫酷鼠标光标压缩包光标

    这种光标设计可以为用户的电脑界面增添一份奢华感和科技感。 "BLUE ALIEN.rar"则可能是一个以蓝色和外星主题为基础的光标集。蓝色通常给人带来宁静和科技的感觉,结合“外星”元素,我们可以猜测这些光标设计可能带...

    VC 光标隐藏功能的实现.rar

    在VC++编程环境中,有时我们需要实现特定的功能,例如在某些应用程序中隐藏鼠标的光标,以提供更沉浸式的用户体验或优化特定操作流程。这个“VC 光标隐藏功能的实现.rar”压缩包文件包含了实现这一功能的源代码,...

    .net页面实现表格上下左右移动光标

    2. **初始化光标位置**:设置一个变量来跟踪当前的光标位置,例如`cursorPos`,初始值设为第一行第一列。 3. **定义移动函数**:创建四个函数分别处理上、下、左、右的光标移动。每个函数需要检查边界条件,防止...

    汇编光标轨迹程序

    可以用汇编程序实现按光标键画出横向竖向形状,可以连续,可以断开,可以抹除

    鼠标光标blue sky

    下面将详细探讨鼠标光标的基本概念、光标的格式与类型、个性化光标的实现方法以及如何使用"Blue Sky"这套光标资源。 首先,鼠标光标是计算机操作系统中的一种重要元素,它指示了鼠标在屏幕上的位置,帮助用户与系统...

    cur光标win32.zip

    2. 转换为CUR格式:使用光标编辑工具(如Microsoft的Resource Hacker或免费的CursorFX)将BMP文件转换为CUR格式,同时定义透明区域和帧。 3. 在代码中使用:在编程项目中,可以将CUR文件作为资源包含进来,然后通过...

    鼠标动态光标(ani)

    标题中的“鼠标动态光标(ani)”指的是计算机操作系统中的一种特殊类型光标,它使用ANI(Animated Cursor)格式,能够显示动态效果,如闪烁、旋转等,为用户的鼠标指针增添趣味性和个性化。这种动态光标通常由一系列...

    鼠标汉字光标块的实现

    鼠标汉字光标块的实现 鼠标汉字光标块的实现 鼠标汉字光标块的实现

    MFC 在光标所在位置输出字符串

    在Windows编程领域,MFC(Microsoft Foundation Classes)是一个强大的C++库,它为开发者提供了构建Windows应用程序的便利。本文将详细讲解如何在MFC应用程序中实现在光标所在位置输出字符串的功能,这对于日志记录...

    C#cs结构自定义光标源码 光标图案

    2. 应用光标:创建好自定义光标后,可以将其设置为控件或整个窗口的光标: ```csharp this.Cursor = customCursor; // 对于Form pictureBox1.Cursor = customCursor; // 对于特定控件 ``` 3. 多种光标图案:如果源码...

    echarts实现地图光标

    echarts实现地图光标

    汇编语言下的光标调整

    通过本篇文章,读者将了解如何在PC机屏幕上清窗口、建立光标坐标的方法,并掌握利用DOS、BIOS功能实现窗口显示方法。 光标调整是汇编语言中一个重要的概念,通过设置光标的位置和属性,可以实现各种屏幕显示效果。...

    C语言实现的光标移动控制(原创)

    在console下,用VC实现的光标移动控制,用到win api函数。有了这个,就可以很方便的在console下写ui程序了。 其中实现有: /* 将光标移到指定位置*/ void JR_SetCursor(int x, int y); /* 将光标移到左上角 */ void...

    C# 动态设置窗体的光标

    在这个例子中,我们从磁盘加载了一个名为`custom_cursor.cur`的自定义光标文件,并将其设置为当前窗体的光标。 总结一下,C#中动态设置窗体光标主要涉及以下几个步骤: 1. 使用`Cursor`类和其预定义的静态属性来...

    VC++光标定位设计

    在`OnSetCursor`函数中,我们设置光标为空,这样视图区域就不会显示系统光标,而是使用我们自定义的光标效果。 通过以上步骤,我们成功地在VC++环境中创建了一个能够动态跟随鼠标移动并划线的光标。用户在视图上...

    光标(ANI格式)使你光标动起来

    每个帧可以有不同的尺寸和颜色深度,这使得 ani 光标可以实现各种复杂的动画效果。 6. **自定义**:用户可以使用图像编辑工具和专用的光标编辑软件(如 CursorFX 的内置编辑器)来创建自己的ANI光标,调整帧速率、...

    关于C语言中的光标定位和获取光标

    这里,`GetStdHandle(STD_OUTPUT_HANDLE)`获取了标准输出设备的句柄,然后将其传递给`SetConsoleCursorPosition`函数,从而实现了光标的定位。值得注意的是,由于Windows的坐标系原点位于左上角,因此在传入坐标值时...

Global site tag (gtag.js) - Google Analytics