2

是否有可能获得用于更新 sql 和 oracle 中表中的多个列的通用查询。而不是使用提供程序类型修改单独的查询。

更新 SQL 中的多个列

4

2 回答 2

0

标准的 ANSI SQL 实现适用于 sql server 和 oracle

UPDATE <TABLE Name>
SET Col1 = ColValue[, Col2 = Col2Value, .....];

唯一需要添加的是更新语句末尾的分号,如“;” 是 oracle 中的强制语句终止运算符,而在 sql server 中是可选的。

注意:我放在方括号 ([]) 中的子句是可选的。

注意 2:UPDATE..FROM 是 SQL Server 使用的属性语法,因此 oracle 不能接受它。

注 3:UPDATE SET (col1,col2) = Col1,Col2 是 oracle 支持但 sql server 不支持的语法。

于 2013-06-28T09:58:56.140 回答
0

我猜 Oracle 与 SQL:2003 兼容

你可以使用

MERGE INTO tablename USING table_reference ON (condition)
WHEN MATCHED THEN
UPDATE SET column1 = value1 [, column2 = value2 ...]

更多关于 MERGE的信息在这里

于 2013-06-28T11:42:46.433 回答