PostgreSQL7.0手册-用户手册-19. SQL命令-UPDATE

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 13:43:41
UPDATE
名称
UPDATE — 替换表中列/字段的数值 

语法
UPDATE table SET col = expression [, ...]
    [ FROM fromlist ]
    [ WHERE condition ]

输入
table 
现存表的名称. 
column 
表 table 中列/字段的名. 
expression 
赋予列/字段的一个有效的值或表达式. 
fromlist 
Postgres 的一个非标准的扩展,允许别的表中的列/字段出现在 WHERE 条件里. 
condition 
请参考 SELECT 语句获得 WHERE 子句的进一步描述. 

输出
UPDATE # 
成功的返回信息.# 意味着更新的行数.如果 # 等于 0 则没有行被更新. 
 
描述
UPDATE 改变满足条件的所有行的声明了的列/字段的值。只有要更改的列/字段需要在语句中出现. 
数组引用使用与 SELECT 里一样的语法.也就是说,单个数组元素,数组元素的一个范围或者是整个数组都可以用一个查询语句更新. 

要更改表,你必须对它有写权限,同样对 WHERE 条件里提到的任何表也要有读权限. 
 

用法
把字段 kind 里的词 "Drama" 用 "Dramatic" 代替: 
UPDATE films SET kind = 'Dramatic' WHERE kind = 'Drama';
SELECT * FROM films WHERE kind = 'Dramatic' OR kind = 'Drama';

 code       title      did  date_prod     kind    len
-------+---------------+-----+------------+----------+-------
 BL101  The Third Man  101  1949-12-23  Dramatic  01:44
 P_302  Becket         103  1964-02-03  Dramatic  02:28
 M_401  War and Peace  104  1967-02-12  Dramatic  05:57
 T_601  Yojimbo        106  1961-06-16  Dramatic  01:50
 DA101  Das Boot       110  1981-11-11  Dramatic  02:29
兼容性
SQL92
SQL92 在定位的 UPDATE 语句上定义了一些不同的语法: 
UPDATE table SET column = expression [, ...]
    WHERE CURRENT OF cursor

这里 cursor 表示一个打开的游标.

Tags:

作者:佚名
分享到: 微信 更多