0

我有一个使用 Derby 的数据库,并试图在一个表上执行一个更新语句,该表的列具有“GENERATED BY DEFAULT AS IDENTITY”。我不是要更新此专栏,而是要更新所有其他专栏。

我似乎找不到正确的语法来更新其余列,而不会出现诸如“尝试修改标识列”之类的错误。

尝试更新我一直在使用该UPDATE命令的表,

UPDATE TableName SET Name = '...', ..., WHERE Name = '...'

表中的第一个值是具有GENERATED BY DEFAULT AS IDENTITY设计的 ID 字段,我不想更新此值,我只想更新UPDATE命令中的所有其他字段。我不知道如何跳过更新此值或简单地更新 ID 字段本身。

提前致谢。

4

1 回答 1

2

所以,这就是我所做的;它工作得很好。你能确定你在做什么与这不同吗?

ij> create table t1 (a int generated by default as identity, b int);
0 rows inserted/updated/deleted
ij> insert into t1 (b) values (1);
1 row inserted/updated/deleted
ij> update t1 set b=2 where b = 1;
1 row inserted/updated/deleted
ij> select * from t1;
A          |B          
-----------------------
1          |2          
1 row selected
于 2012-11-22T17:20:57.377 回答