假设你有一个这样的表:
id | name
---+---------
1 | foo
2 | bar
Run Code Online (Sandbox Code Playgroud)
name列上有唯一性约束.
如何将行设置为id=2to foo,将行设置id=1为bar?
我知道你可能只是为两者分配临时名称然后坚持所需的名称,但这似乎不是最简单的方法.
我正在使用Hibernate,所以任何特定于Hibernate的技巧都会很好.这似乎是一个影响所有RDBMS的问题.
在Sql Server中,您可以同时更新它们:
UPDATE table
SET Name = CASE WHEN ID = 1 THEN 'bar' ELSE 'foo' END
WHERE ID IN ( 1, 2 )
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
164 次 |
| 最近记录: |