我有一个以这种方式创建的表:
--
-- Table: #__content
--
CREATE TABLE "jos_content" (
"id" serial NOT NULL,
"asset_id" bigint DEFAULT 0 NOT NULL,
...
"xreference" varchar(50) DEFAULT '' NOT NULL,
PRIMARY KEY ("id")
);
Run Code Online (Sandbox Code Playgroud)
稍后插入一些行并指定 id:
INSERT INTO "jos_content" VALUES (1,36,'About',...)
稍后,一些记录被插入而没有 id 并且它们因错误而失败:
Error: duplicate key value violates unique constraint。
显然,id 被定义为一个序列:

每个失败的插入都会增加序列中的指针,直到它增加到一个不再存在的值并且查询成功。
SELECT nextval('jos_content_id_seq'::regclass)
表定义有什么问题?解决这个问题的聪明方法是什么?
我正在使用 Firebird 2.1.1 数据库,并开始阅读有关监控表的信息。
我试图以某种方式实时查看每个客户端在数据库中执行的查询。
我看了看MON$STATEMENTS表格,但没有提供太多信息。我本来希望表格中有更多内容。

我是不是找错地方了,还是我不明白 Firebird 监控表的目的/用途?