随笔分类 -  Oracle

Oracle学习笔记
摘要:Sqlldr sql loader可以把一些以文本格式存放的数据顺利地导入到oracle数据库中,它是一种在不同数据库之间进行数据迁移非常方便而且通用的工具。缺点就是速度比较慢,另外对blob等类型的数据就有点麻烦了。一、用法: SQLLDR keyword=value [,keyword=value,...]二、有效的关键字: userid -- ORACLE username/password control – 控制文件 log – 记录的日志文件 bad – 坏数据文件 data – 数据文件 discard – 丢弃的数据文件 discardmax – 允许丢弃数据的最大值 (全部. 阅读全文
posted @ 2011-11-11 14:11 龙向何处 阅读(1191) 评论(0) 推荐(0)
摘要:Oracle developer的异常处理机制 Oracle developer的异常处理机制 Oracle developer以其快速的数据处理开发而闻名,其异常处理机制也是比较完善,不可小觑。1、 异常的优点 如果没有异常,在程序中,应当检查每个命令的成功还是失败,如 BEGIN SELECT ... -- check for ’no data found’ error SELECT ... -- check for ’no data found’ error SELECT ... -- check for ’no data found’ error 这种实现的方法缺点在于错误处理没有与. 阅读全文
posted @ 2011-11-08 11:43 龙向何处 阅读(744) 评论(0) 推荐(0)
摘要:Oracle中动态SQL详解1.静态SQLSQL与动态SQL Oracle编译PL/SQL程序块分为两个种:其一为前期联编(earlybinding),即SQL语句在程序编译期间就已经确定,大多数的编译情况属于这种类型;另外一种是后期联编(latebinding),即SQL语句只有在运行阶段才能建立,例如当查询条件为用户输入时,那么Oracle的SQL引擎就无法在编译期对该程序语句进行确定,只能在用户输入一定的查询条件后才能提交给SQL引擎进行处理。通常,静态SQL采用前一种编译方式,而动态SQL采用后一种编译方式。 本文主要就动态SQL的开发进行讨论,并在最后给出一些实际开发的技巧。2.动态 阅读全文
posted @ 2011-05-31 16:12 龙向何处 阅读(52053) 评论(6) 推荐(3)
摘要:联合数组的使用方法联合数组以前被称为PL/SQL表。在表中不能使用联合数组,只能将它们用作程序设计的结构体。只能在PL/SQL中访问联合数组。注意到联合数组带来的一些关键问题是非常重要的。这些问题使我们介绍它们的用法时,需要采取一些特别的方法。这些问题包括:联合数组不需要初始化,也没有构造函数语法。在对它们进行赋值以前,也不需要专门为其分配存储空间,也就不需要使用集合API的EXTEND方法。在ORACLE 10G中,以及在ORACLE 10G以前的版本中,都可以使用数字索引联合数组。另外,在ORACLE 10G中,还可以使用具有唯一性的变长字符串作为联合数组的索引。可以使用任意的整数作为联合 阅读全文
posted @ 2011-05-31 13:43 龙向何处 阅读(3783) 评论(0) 推荐(0)
摘要:FORALL语句的一个关键性改进,它可大大简化代码,并且对于那些要在PL/SQL程序中更新很多行数据的程序来说,它可显著提高其性能。1:用FORALL来增强DML的处理能力Oracle为Oracle8i中的PL/SQL引入了两个新的数据操纵语言(DML)语句:BULK COLLECT和FORALL。这两个语句在PL/SQL内部进行一种数组处理;BULK COLLECT提供对数据的高速检索,FORALL可大大改进INSERT、UPDATE和DELETE操作的性能。Oracle数据库使用这些语句大大减少了PL/SQL与SQL语句执行引擎的环境切换次数,从而使其性能有了显著提高。使用BULK COL 阅读全文
posted @ 2011-05-29 12:11 龙向何处 阅读(5296) 评论(0) 推荐(1)