是否有可能获得更新sql和oracle中表中多列的通用查询。而不是使用提供者类型修改单独的查询。
答案 0 :(得分:0)
标准的ANSI SQL实现适用于sql server和oracle
UPDATE <TABLE Name>
SET Col1 = ColValue[, Col2 = Col2Value, .....];
你必须要做的唯一事情就是在update语句的末尾加一个分号,作为“;”是oracle中的强制语句终止运算符,因为它在sql server中是可选的。
注意:我放在方括号([])中的子句是可选的。
注意2:UPDATE..FROM是SQL Server使用的专业语法,所以它不能被oracle接受..
注3:UPDATE SET(col1,col2)= Col1,Col2是oracle支持的语法,但不是sql server支持的语法。
答案 1 :(得分:0)
我猜Oracle与SQL:2003兼容
您可以使用
MERGE INTO tablename USING table_reference ON (condition)
WHEN MATCHED THEN
UPDATE SET column1 = value1 [, column2 = value2 ...]
有关MERGE here
的更多信息