摘要: 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 龙向何处 阅读(51867) 评论(6) 推荐(3) 编辑
摘要: 联合数组的使用方法联合数组以前被称为PL/SQL表。在表中不能使用联合数组,只能将它们用作程序设计的结构体。只能在PL/SQL中访问联合数组。注意到联合数组带来的一些关键问题是非常重要的。这些问题使我们介绍它们的用法时,需要采取一些特别的方法。这些问题包括:联合数组不需要初始化,也没有构造函数语法。在对它们进行赋值以前,也不需要专门为其分配存储空间,也就不需要使用集合API的EXTEND方法。在ORACLE 10G中,以及在ORACLE 10G以前的版本中,都可以使用数字索引联合数组。另外,在ORACLE 10G中,还可以使用具有唯一性的变长字符串作为联合数组的索引。可以使用任意的整数作为联合 阅读全文
posted @ 2011-05-31 13:43 龙向何处 阅读(3735) 评论(0) 推荐(0) 编辑