1 在开发数据库应用程序中,将商业逻辑和企业规则集成到PL/SQL子程序(过程、函数、包、触发器),然后在应用程序中调用子程序实现相应的程序功能;
如果商业逻辑和企业规则发生变化,只需重新建立子程序就可以了,无需修改客户端的应用程序代码。
2 PL/SQL是ORACLE在标准SQL上的过程性拓展,允许在其中嵌入SQL语句和各种类型的条件控制语句和循环语句;例子,触发器的使用;
3 为了应用模块与应用环境的数据交互,使用常量、变量、游标和例外等各种标识符;
4 oracle中decode使用方法;
rpad(string,int,[]):从右边对字符串按指定的字符进行填充;
lpad(string,int,[]):从左边对字符串按指定的字符进行填充;
decode(条件,值1,返回值1,...,值n,返回值n,缺省值): 应用举例
(1) select decode(sign(变量1-变量2),-1,变量1,变量2) from dual;//取较小值
(2) 结合lpad()使主键的值自动加1并在前面补0
select lpad(decode(count(记录编号),0,1,max(to_number(记录编号)+1)),14,0) 记录编号 from table;
(3) 查询某班男生和女生的数量分别是多少?
select count(*) from table where 性别=‘男’;
select count(*) from table where 性别=‘女’;
将两种显示在一起:
select decode(性别,男,1,0), decode(性别,女,1,0) from table;
(4) 表table_subject,有subject_name列。要求按照:语、数、外的顺序进行排序
select subject_name from table_subject order by decode(subject_name,'语',1,‘数’,2,‘外’,3);