Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1184580
  • 博文数量: 398
  • 博客积分: 10110
  • 博客等级: 上将
  • 技术积分: 4055
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-23 20:01
个人简介

新博客http://www.cnblogs.com/zhjh256 欢迎访问

文章分类

全部博文(398)

文章存档

2012年(1)

2011年(41)

2010年(16)

2009年(98)

2008年(142)

2007年(100)

我的朋友

分类: Oracle

2008-01-06 21:17:24

行级别的DML

       Oracle9i Database Release 2开始,支持使用PL/SQL记录更新和插入行。如下:

CREATE TABLE books (
 isbn VARCHAR2(13),
 title VARCHAR2(200),
 summary VARCHAR2(2000),
 author VARCHAR2(200),
 page_count NUMBER
)
/

DECLARE
 my_book books%ROWTYPE;
BEGIN
 my_book.isbn := '1-56592-335-9';
 my_book.title := '
ORACLE PL
/SQL PROGRAMMING';
 my_book.summary := 'General user guide and reference';
 my_book.author := 'FEUERSTEIN, STEVEN AND BILL PRIBYL';
 my_book.page_count := 1000;

  INSERT INTO books VALUES my_book;
END;

       /

       也可以更新:

DECLARE
 my_book books%ROWTYPE;
BEGIN
 my_book.isbn := '1-56592-335-9';
 my_book.title := '
ORACLE PL
/SQL PROGRAMMING';
 my_book.summary := 'General user guide and reference';
 my_book.author := 'FEUERSTEIN, STEVEN AND BILL PRIBYL';
 my_book.page_count := 980; -- new page count for 3rd edition
 
 UPDATE books
 SET ROW = my_book
 WHERE isbn = my_book.isbn;
END;
/

其中的限制包括:

·必须使用ROW关键字更新,不能更新一个子集;

·不能使用子查询;

 

 

阅读(1231) | 评论(0) | 转发(0) |
0

上一篇:更改Oracle类型

下一篇:SQL,PL/SQL编程规范

给主人留下些什么吧!~~