这篇主要想说的是plsql语言的自定义数据类型。
和编程语言java类比,我们刚入门的时候,最初学习的就是基础数据类型,
然后学习一个main函数,编写代码熟悉java关键字和逻辑控制语句,然后
就是java中常用集合的使用。这些会了以后,就是编写最简单的类:
java bean或pojo类。
类比java的入门,在学习plsql语言时,可以类比记忆,更易理解。
存储过程中也是plsql语句的集合,在匿名代码块,方法,触发器中都是plsql语句。
所以他们之间区别只在于用途。比如匿名代码块(declare begin end;)的用途与
存储过程相比就是简单的执行一次,类似java中的main函数或者测试代码。
存储过程是oracle的对象,这种被封装的对象程序可以被多次调用。类似java有具体功能的类。方法的用途在于公用性强,有返回结果,可以嵌在sql中。。。
知道了这些,在下面做实验就不必纠结于同样的代码在匿名代码块和存储过程中的区别。
有个注意的地方,代码块在test window中不能设断点,只能单步调试。
说道自定义类型,其实和java中java bean一个道理。定义使用type关键字。
关于plsql中容器类型,目前我只知道
record,table,array,varray,subtype, object。
表中的字段或者行也可以
被定义成type。例如:变量名 Table_xxx.column_xxx%type。