.\" auto-generated by docbook2man-spec $Revision: 1.1 $ .TH "UPDATE" "7" "2003-11-02" "SQL - Language Statements" "SQL Commands" .SH NAME UPDATE \- 更新一個表中的行 .SH SYNOPSIS .sp .nf UPDATE [ ONLY ] \fItable\fR SET \fIcolumn\fR = { \fIexpression\fR | DEFAULT } [, ...] [ FROM \fIfromlist\fR ] [ WHERE \fIcondition\fR ] .sp .fi .SH "DESCRIPTION 描述" .PP \fBUPDATE\fR 改變滿足條件的所有行的聲明瞭的列/欄位的值。 只有要更改的列/欄位需要在語句中出現,沒有明確的 SET 的欄位保持它們原來的數值。 .PP 預設時,UPDATE 將更新所宣告的表和所有子表的記錄。 如果你希望只更新所宣告的表,你應該使用 ONLY 子句。 .PP 要更改表,你必須對它有UPDATE 許可權, 同樣對 expression 或者 condition 條件裡提到的任何表也要有SELECT許可權。 .SH "PARAMETERS 引數" .TP \fB\fItable\fB\fR 現存表的名稱(可以有模式修飾)。 .TP \fB\fIcolumn\fB\fR 表 table 中列/欄位的名。 .TP \fB\fIexpression\fB\fR 賦予列/欄位的一個有效的值或表示式。表示式可以使用表中這個或其它欄位的舊數值。 .TP \fBDEFAULT\fR 把欄位設定為它的預設值(如果沒有預設表示式賦予它,那麼就是 NULL)。 .TP \fB\fIfromlist\fB\fR 一個表示式的列表,允許來自其它表中的列/欄位出現在 WHERE 條件裡。 .TP \fB\fIcondition\fB\fR 一個表示式,返回 boolean 型別。只有這個表示式返回 true 的行被更新。 .SH "OUTPUTS 輸出" .PP 成功完成後,UPDATE 命令返回形如 .sp .nf UPDATE \fIcount\fR .sp .fi 的命令標籤。count 是更新的行數。 如果 count 是 0, 那麼沒有符合 condition 的行(這個不認為是錯誤)。 .SH "EXAMPLES 例子" .PP 把表 films 裡的欄位 kind 裡的詞 Drama 用Dramatic 代替: .sp .nf UPDATE films SET kind = 'Dramatic' WHERE kind = 'Drama'; .sp .fi .PP 調整表 weather 中的一行的溫度記錄並且把降水設定為預設值: .sp .nf UPDATE weather SET temp_lo = temp_lo+1, temp_hi = temp_lo+15, prcp = DEFAULT WHERE city = 'San Francisco' AND date = '2003-07-03'; .sp .fi .SH "COMPATIBILITY 相容性" .PP 這條命令遵循 SQL 標準。FROM 子句是 PostgreSQL 擴充套件。 .SH "譯者" .B Postgresql 中文網站 .B 何偉平 .SH "跋" .br 本頁面中文版由中文 man 手冊頁計劃提供。 .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR