我有查询创建的表

CREATE TABLE [ConsignmentBody] ([ConsignmentBodyID] INTEGER PRIMARY KEY AUTOINCREMENT,
                                [OID] VARCHAR(64),
                                [Body] CLOB);

CREATE UNIQUE INDEX [ConsignmentBody_OID] ON [ConsignmentBody] ([OID] ASC);


我需要用唯一的ID处理同一张表中的数据。

我试过了:

insert into ConsignmentBody(ConsignmentBodyID, body.[OID],body.[Body])
select (MAX(body.[ConsignmentBodyID])+1), body.[OID], body.[Body]
from [ConsignmentBody] body



  扔在“附近”。语法错误


插入到ConsignmentBody中(null,body。[OID],body。[Body])
选择body。[ConsignmentBodyID],body。[OID],body。[Body]
来自[ConsignmentBody]正文


  抛出“ null”语法错误


如何解决?

最佳答案

您已在ConsignmentBodyID上设置了自动增量。为什么必须手动设置该值?只需插入没有主键的记录,它就会自动设置

insert into ConsignmentBody(OID, Body)
select OID, Body
from ConsignmentBody

关于mysql - 在同一表中的sqlite复制数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40425922/

10-11 20:13