记录类型 利用记录类型可以实现复合数据类型的定义: 记录类型允许嵌套: 可以直接利用记录类型更新数据. 传统操作的问题 对于Oracle数据类型,主要使用的是VARCHAR2.NUMBER.DATE等类型,但是这些基本数据类型,如果在进行一些实际操作的时候就会比较麻烦. 获取一个雇员的完整信息: 如下数据类型被单独定义. DECLARE v_emp_empno        emp.empno%TYPE ; v_emp_ename        emp.ename%TYPE ; v_emp_jo…
oracle里默认的date显示样式: 我的是汉化过的: 进入后,点击工具->首选项->日期/时间设置即可: 设置后在pl/sql developer中查看: 英文版的操作步骤: Tools --> Preferences... --> 左侧User Interface中的Date/Time…
PL/SQL中提供了常用的三种集合联合数组.嵌套表.变长数组,而对于这几个集合类型中元素的操作,PL/SQL提供了相应的函数或过程来操纵数组中的元素或下标.这些函数或过程称为集合方法.一个集合方法就是一个内置于集合中并且能够操作集合的函数或过程,可以通过点标志来调用.本文主要描述如何操作这些方法. 一.集合类型提供的方法与调用方式 1.集合的方法与调用方式 EXISTS 函数EXISTS(n)在第n个元素存在的情况下会返回TRUE,否则返回FALSE. 通常使用EXISTS和DELETE来维护嵌…
varrays可以再表,记录,对象定义中使用,类似于C中的数组. 1.定义varrays用作PL/SQL程序构造块. declare type integer_varray ) of integer; --定义int型varray,含3行 var_int integer_varray:=integer_varray(); --声明var_int的varray 变量 begin .. loop --为var_int赋值 var_int.extend; var_int(i):+i; end loop…
+-----------------------------------------------------------------------+ |   在本篇随笔中,仅根据个人经验累积错误进行描述.      | +-----------------------------------------------------------------------+ PL/SQL Developer Ora-12514:TNS:监听程序当前无法识别链接描述符中请求的服务 该问题是由于缺少监听器的SI…
一.PL/SQL记录 定义: TYPE <类型名> IS RECORD <列名1 类型1,列名2 类型2,...列名n 类型n,> [NOT NULL] <列的类型>可以为Oracle的数据类行以及用户自定义类型;可以是记录类型的嵌套. 二.PL/SQL表 定义: TYPE <类型名> IS TABLE OF <列的类型> [NOT NULL] INDEX BY BINARY_INTEGER; <列的类型>可以为Oracle的数据类行…
SQL和PL/SQL: SQL 结构化查询语言(Structural Query Language),是用来访问和操作关系型数据库的一种标准通用语言,属于第四代语言(4GL).可以方便的调用相应语句来去的结果,特点是非过程化,使用的时候不用指明执行的具体方法,不用关注实现的细节,但是某些情况下满足不了复杂业务流程的需求. PL/SQL是 Procedure Language & Structured Query Language 的缩写.属于第三代语言(3GL),是一种过程化语言.PL/SQL是…
1. 实现参照完整性      指若两个表之间具有主从关系(即主外键关系),当删除主表数据时,必须确保相关的从表数据已经被删除.  当修改主表的主键列数据时,必须确保相关从表数据已经被修改.为了实现级联删除,可在定义外部键约束时指定ON DELETE CASCADE关键字  alter table emp add constraint fk_deptno foreign key (deptno) references dept(deptno) on delete cascade; 实现级联更新,…
pl/sql定义 sql是结构化查询语言.sql是不是一个编程语言?编程语言一般都能够声明变量,写条件判断,循环.sql不具备这些特征,所有sql不是一门编程语言.我们在实际的开发中,有这种需要,把sql语句和编程语言的特性结合起来.oracle 就提供了pl/sql这种语言来解决这种问题.使用pl/sql有什么优点: 1.可以提高程序的运行效率,因为能够减少数据库的访问次数 2.可以对复杂的业务逻辑进行封装 3.pl/sql具有编程语言的特性,可以写if else 实现复杂的业务逻辑 pl/s…
1. 使用%TYPE 在许多情况下,PL/SQL变量可以用来存储在数据库表中的数据.在这种情况下,变量应该拥有与表列相同的类型.例如,students表的first_name列的类型为VARCHAR2(20),我们可以按照下述方式声明一个变量: DECLARE v_FirstName VARCHAR2(20); 但是如果first_name列的定义改变了会发生什么(比如说表改变了,first_name现在的类型变为VARCHAR2(25))?那就会导致所有使用这个列的PL/SQL代码都必须进行修…