【发布时间】:2013-07-23 12:55:51
【问题描述】:
我正在使用 UniDAC 将我们的 Delphi XE2 应用程序从 MSSQL(使用 ADO 组件)迁移到 PostgreSQL。
在数据库中,有一些serial 类型的字段(自动增量)。当我追加记录时,我没有将任何数据放入此自动增量字段。以前,使用 MSSQL/ADO 它会自动运行,但现在我有一个例外。
代码:
aqrMsgs.Append;
aqrMsgsUser_From.AsInteger := UserId;
aqrMsgsUser_To.AsString := UserIds[I];
aqrMsgsSubject.AsString := Trim (edtSubject.Text);
aqrMsgsContents.AsString := mmoContents.Text;
aqrMsgsIsDone.AsBoolean := False;
aqrMsgs.Post;
例外是:
字段 'id' 是 TIntegerField,而不是 TAutoIncrementField。
顺便说一句,如果我使用 DBGrid 编辑功能(确切地说,我使用的是 ExpressQuantumGrid),将记录附加到具有相同结构的另一个表中,一切正常。
如何解决? 谢谢。
【问题讨论】:
标签: delphi postgresql delphi-xe2 devart unidac