我必须使用其他表中的字段创建一个表(H2嵌入式数据库)。我决定使用CREATE TABLE AS
声明。
我的代码:
CREATE TABLE DOC AS
SELECT I.ID, I.STATUS, A.REMINDERINFORMATION
FROM IE802 I JOIN IE802_ATTRIBUTES A ON A.IE802_ID=I.ID;
从上面的代码生成的每一行还必须有DOCID
PrimaryKey。如何添加此列并同时使其自动增量和PK?
感谢您提供任何提示和其他解决方案!
或者,我怎样才能使现有的I.ID成为PK?
我仍然收到错误:列“ID”不能为空; SQL语句: ALTER TABLE DOC ADD PRIMARY KEY(ID)[90023-147]
答案 0 :(得分:1)
H2支持CREATE AS SELECT中的列定义:
CREATE TABLE DOC(
ID INT PRIMARY KEY,
STATUS INT,
REMINDERINFORMATION VARCHAR(255)
)
AS SELECT I.ID, I.STATUS, A.REMINDERINFORMATION
FROM IE802 I JOIN IE802_ATTRIBUTES A ON A.IE802_ID=I.ID;