易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE PL/SQL 记录(Record)学习笔记(一)

在PL/SQL程序设计中,有三种定义记录类型的方法:一种是使用%ROWTYPE属性;另一种是在PL/SQL程序的声明部分显示定义记录类型;最后一种方法是将记录类型定义为数据库结构或对象类型。
我先简单的介绍一个下面要用到的表的结构(黑体标明的字段为主键):
INDIVIDUALS表
 
INDIVIDUAL ID
FIRST NAME
MIDDLE_INITIAL
LAST_NAME
 
ADDRESSES表
 
ADDRESS ID
INDIVIDUAL ID
STREET_ADDRESS1
STREET_ADDRESS1
STREET_ADDRESS1
CITY
STATE
POSTAL_CODE
COUNTRY_CODE
 
TELEPHONES表
 
TELEPHONE ID
INDIVIDUAL ID
ADDRESS_ID
TELEPHONE_TYPE
TELEPHONE_NUMBER
 
一、记录类型的定义和使用
 
1、使用%ROWTYPE属性隐式定义记录类型
可以使用%ROWTYPE属性引用PL/SQL游标、数据库中的表、对象或视图,%ROWTYPE属性继承了这些对象的行定义。在用%ROWTYPE属性定义的行中,所有字段都是根据与之相关的表列的数据类型隐式定义的。字段名称也就是表中的列名。
通过使用点语法隔开记录变量名称和记录的字段名,我们就可以分别访问记录的各个字段。
如下例所示:
DECLARE
-- Define a variable with an implicit record type.
individual individuals%ROWTYPE;
BEGIN
-- Initialize the field values for the record.
individual.individual_id := 1;
individual.first_name := 'John';
individual.middle_initial := 'D';
individual.last_name := 'Rockefeller';
-- Insert the values into the target object.
INSERT
INTO individuals
VALUES
(individual.individual_id
,individual.first_name
,individual.middle_initial
,individual.last_name);
-- Commit the record.
COMMIT;
END;
/   
2、显式地将记录类型定义为PL/SQL结构
也可以在PL/SQL程序的声明部分,通过定义一个记录类型的方式,显式的创建一个记录类型。可以显式地键入变量名称来定义记录类型的变量,也可以使用%TYPE属性定义变量。
如下例所示:
DECLARE
-- Define a record type.
TYPE individual_record IS RECORD
(individual_id INTEGER
,first_name VARCHAR2(30 CHAR)
,middle_initial individuals.middle_initial%TYPE
,last_name VARCHAR2(30 CHAR));
-- Define a variable of the record type.
indi


相关文档:

Oracle存储过程的执行

declare
msg varchar(1000);    --定义一个变量用于显示传出的信息
begin
PRO_TACCOUNT_RECOUNT ('B9D2B59A955541298D59EA8C35668CFD',msg);   --执行存储过程
dbms_output.put_line(msg);   --输出变量
end; ......

Oracle用imp和exp实现数据的导入和导出

 Imp和Exp
命令详解:
Exp
导出
模式:
Full模式---导出
整个数据库
User模式---导出
指定的用户
Table模式—导出
指定的表
Tablespace模式—导出

空间
Exp
导出
参数:
OWNER指定要导出
的用户列表
FULL=y表示要导出
整个数据库
Tables指定要导出
的表
Tablepaces指定要导出
的表 ......

Oracle JOB 用法小结

一、设置初始化参数 job_queue_processes
  sql> alter system set job_queue_processes=n;(n>0)
  job_queue_processes最大值为1000
  
  查看job queue 后台进程
  sql>select name,description from v$bgprocess;
  
  二,dbms_job package 用法介绍
  包含以下子过程:
  
  ......

Oracle常用SQL语句(PL/SQL developer工具下的)

 建表
create table users(
id number(4) primary key,
username varchar2(10),
password varchar2(10)
)
查询表并解锁表(即可以点击输入框下面的"锁"图标工具, 即"Edit data")
select * from users for update
删除表中多余的列
alter table mobilephone drop column mobiletype
转载
------------------- ......

SQL Update语句的执行顺序

执行顺序:从左到右,变量优先,逐行更新
 摘自CSDN的例子(http://topic.csdn.net/u/20091030/16/7fd75fa6-bdb9-4516-9b27-48aef69703ba.html
http://topic.csdn.net/u/20090904/16/e5dad9c7-fb59-41b9-b28d-e3b71c3e8420.html)
1.变量优先
create table #t (field1 varchar(10),field2 varchar(10))
insert #t sel ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号