Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1799729
  • 博文数量: 334
  • 博客积分: 11301
  • 博客等级: 上将
  • 技术积分: 3452
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-18 10:19
个人简介

路虽弥,不行不至;事虽少,不做不成。

文章分类

全部博文(334)

文章存档

2013年(4)

2012年(19)

2011年(27)

2010年(71)

2009年(45)

2008年(15)

2007年(84)

2006年(69)

分类: Oracle

2009-08-26 17:09:20

如果SELECT语句中有使用Alias,DISTINCT operator, CURSOR expression, SET(union,union all,minus,intersect) operators, group_by_clause, or aggregate(count,max,mix,avg) functions,则无法到查询返回值进行更新;
 
eg:
 
TABLE:emp
 
id       name      salary
==========================
10       aaaa       1234
13       abcd       2313
15       cdue       1245
...       ...        ...
 
 
case 1> 使用别名;
 
select id emp_id, name emp_name ,salary  emp_salary
from emp
where id=10
for update;  --这样是无法达到更新的目的;
 
可修改成
 
select id emp_id, name emp_name ,salary 
from emp
where id=10
for update of salary --对salary字段进行更新;
 
 
 
 
阅读(1628) | 评论(0) | 转发(0) |
0

上一篇:英语听力

下一篇:七夕情人节快乐!

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