1.定义游标:列出每个员工的姓名.部门名称并编程显示第10个到第20个记录. declare cursor zemp_cursor is (select temp.ename, temp.dname from (select e.ename, d.dname, ROWNUM rn from zemp e, zdept d where e.deptno=d.deptno(+) ) temp ) ; begin for zemp_record in zemp_cursor loop --隐式打开游标…
Oracle 从零开始,不知所措.要掌握一种技能,最好的方式是先学会怎么使用它,然后再深入学习,先有样子,再有技术.   一,什么是数据库? 为什么需要数据库? 数据库实质上是一个信息的列表,或者是一组配合工作的列表,数据库程序可以看做是一个列表管理器.简单的信息可以用电子表记录,然后错综复杂列表信息需要数据库的进行管理,数据库有多种性能:行数多,允许许多用户同时使用,安全,关系能力,保证数据质量的约束条件.   二,SQL的作用和特点? Structure Query Language(SQL…
  运行环境:Oracle database 11g + PL/SQL Developer ex: --创建一个表 create table plspl_test_product( --加入not null 表示product_name不能为空 product_name varchar2(25) not null, product_price Number(4,2) not null, --未加not null 表示可以为空或者有相应的值 purchase_date date, salesper…
8.使用PL/SQL编写触发器: 触发器存放在数据缓冲区中.        触发器加序列能够实现自动增长.        在触发器中不能使用connit和rollback.        DML触发器在对特定的表执行DML(insert.update.delete)操作时激发.        语句级不能用:new和:old,行级可用.(在触发器中加上for each row就是行级触发器,不加则默认语句级)        一张表可以有多个触发器,但是一个触发器只能监听一个表. 定义触发器:   …
一.多表查询综合练习 1.  列出高于在30部门工作的所有人员的薪金的员工的姓名.部门名称.部门编号.部门人数 分析: 需要的员工信息: |-emp表:姓名.部门编号 |-dept表:部门名称.部门编号 |-emp表:统计部门人数 确认关联关系: emp.deptno=dept.deptno 1)    查询出在30部门工作的所有人员的薪金 ; 2)    找出工资大于30部门的员工的姓名.部门编号(返回多行单列数据,在where子句子查询) select e.ename, e.deptno,…
Oracle 四个表的 emp dept  salgrade  bunus 的结构,记住有利于后期SQL语句的学习 雇员表(emp) No. 字段 类型 描述 1 empno NUMBER(4) 表示雇员编号,是唯一的 2 ENAME VARCHAR2(10) 表示雇员姓名 3 JOB VARCHAR2(9) 表示工作职位 4 MGR NUMBER(4) 表示雇员的领导编号 5 HIREDATE DATE 表示雇佣的时间 6 SAL NUMBER(7,2) 表示雇员的薪金 7 COMM NUMB…
子查询在一个select中出现多个嵌套查询语句 1.在where子句中使用子查询(一般返回"单行单列" "单行多列" "多行单列"(可以提供in.any.all )) 示例1:查找低于平均工资的雇员信息(返回单行单列) select * from emp where sal < (select avg(sal) from emp) 示例2:查找出公司最早雇佣的雇员信息(返回单行单列) select * from emp where hire…
多表查询:查询结果需要用到两个或者以上表,此时需要多表连接,产生多表查询 1.内连接(等值连接) 示例:将两个表内容连接显示 select * from dept d, emp e where d.deptno = e.deptno; 注意:只有当d.deptno = e.deptno条件满足,内容才会显示,否则不显示 2 .外连接:让等值判断左右两边有一边的数据可以全部显示出来,使用外连接方式时使用”(+)” 格式:   左外连接:字段=字段(+) 右外连接:字段(+)=字段 示例:显示雇员的…
  group by分组查询 示例:要求查询出每个部门的编号,人数,以及最高和最低工资  select deptno, count(empno), max(sal), min(sal) from emp group by deptno:   限制1:在没有使用group by子句,select中不能够使用统计函数 正确代码 错误代码 select deptno,count(empno), max(sal),min(sal) from emp group by deptno select dept…
PL /SQL是一种高级数据库程序设计语言,该语言专门用于在各种环境下对ORACLE数据库进行访问.由于该语言集成于数据库服务器中,所以PL/SQL代码可以对数据进行快速高效的处理.PL/SQL是 Procedure Language & Structured Query Language 的缩写.ORACLE的SQL是支持ANSI(American national Standards Institute)和ISO92 (International Standards Organization…