Monthly Archives: November 2015
Oracle分析函数三(first,last,first_value,last_value)
一、创建表,初始化数据 二、取部门工资最小和最大的人 运行结果: DEPT_NO MIN_SALARY_PERSON MAX_SALARY_PERSON MIN_SALARY_PERSON MAX_SALARY_PERSON 10 王五 田丰 王五 赵六,田丰 20 王麻子 陈中华 王麻子 陈中华 三、列出部门所有的人,并增加本部门工资最小和最大人的名字 注意last_value函数,使用order by会加上一个默认窗口RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW,必须修改为窗口的全部记录,否则 运行结果: DEPT_NO EMP_NAME EMP_SALARY MIN_SALARY_PERSON MAX_SALARY_PERSON 10 王五 1500 王五 赵六 10 张三 2000 王五 赵六 10 李四 3000 王五 赵六 10 田丰 5000 王五 赵六 10 赵六 [...]
把Oracle数据库表内容导出文件
1、运行日志表和序列 JOB_STATUS字段说明: I: 初始化状态,存储过程执行后立即记录 P: 准备好查询SQL后,准备执行SQL语句 S: 数据导出成功,SQL_TEXT字段中有运行的SQL语句 E: 数据导出失败,ERROR_MESSAGE为出错的文本 2、创建导出文件夹、并分配权限 3、存储过程代码 按照表的修改日期提出数据,假定所有表的最后修改日期字段为ETL_DT
Oracle中DDL语句的审计
借助于DDL语句的审计日志,记录对表结构的变更,辅助从开发环境到测试环境的迁移工作。 创建审计结果表: DDL语句的触发器: 参考资料: 数据库审计方案(包括login,logout,DML,DDL等)
Oracle存储过程中异常处理测试
总结如下: 1、如果SELECT … INTO …语句取不到数据,将触发NO_DATA_FOUND异常,判断SQL%NOTFOUND的语句不生效 2、EXCEPTION语句必须和BEGIN/END块一起使用 测试相关的表: 测试的存储过程: