Sql H2数据库主键冲突

Sql H2数据库主键冲突,sql,h2,composite-primary-key,Sql,H2,Composite Primary Key,我试图在一个主键由2个属性组成的表上进行插入。但是,当我尝试进行插入时,主键中的一个属性与已插入的属性相同,我得到以下错误: Unique index or primary key violation: "CONSTRAINT_INDEX_CCC ON PUBLIC.ABWESENHEIT(DATUM) VALUES 这是我的桌子: Create TABLE Abwesenheit ( s_id INTEGER NOT NULL REFERENCES Schueler(id) ON

我试图在一个主键由2个属性组成的表上进行插入。但是,当我尝试进行插入时,主键中的一个属性与已插入的属性相同,我得到以下错误:

Unique index or primary key violation: "CONSTRAINT_INDEX_CCC ON PUBLIC.ABWESENHEIT(DATUM) VALUES
这是我的桌子:

Create TABLE Abwesenheit (

    s_id INTEGER NOT NULL REFERENCES Schueler(id) ON DELETE CASCADE,
    entschuldigt BOOLEAN DEFAULT FALSE,
    datum TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    kommentar VARCHAR(40),
    kalendereintrag_id VARCHAR(40) REFERENCES Schoolsubject(name) ON DELETE CASCADE,
    deleted BOOLEAN DEFAULT FALSE,
    PRIMARY KEY (s_id,datum)

);
这里有两个插页重现了这个问题:

insert into Abwesenheit (s_id, entschuldigt, kommentar,datum,kalendereintrag_id) values (1,'false','','2015-12-21 11:59:00.0','Geschichte');
insert into Abwesenheit (s_id, entschuldigt, kommentar,datum,kalendereintrag_id) values (2,'false','','2015-12-21 11:59:00.0','Geschichte');
即使“datum”属性默认为当前_时间戳,我也需要能够插入自定义时间戳(即追溯条目)

鉴于两个插入中的“s_id”不同,它们应该可以工作。但事实并非如此。关于问题的起因有什么想法吗


提前谢谢

该问题是由另一个表引起的,该表引用了我的表,假设表Abwesenheit中的日期是唯一的。

CONSTRAINT\u INDEX\u CCC表明它可能不是引起此错误的主键。您的表上有第二个唯一索引吗?可能是一个约束?您可以通过将其中一个日期/时间更改为12:00:00来测试数据是否限制您取消查询值。我肯定你已经检查过了,但也值得再次检查你没有任何冲突的现有记录。我已经检查过了,是的,它允许我插入它。数据似乎是个问题,但我不明白它为什么会这样。