Skip to content

[Bug]: DDL显示和正确是建表语句不同 #301

Description

@zq380

发生了什么?/ What happened?

CREATE TABLE "datapoints" (
device_id INTEGER NOT NULL,
tag_id INTEGER NOT NULL,
ts INTEGER NOT NULL,
value REAL,
PRIMARY KEY (device_id, tag_id, ts)
) WITHOUT ROWID 这是我建表语句,但是,ddl显示出来是CREATE TABLE "datapoints" (
"device_id" INTEGER PRIMARY KEY AUTOINCREMENT,
"tag_id" INTEGER NOT NULL,
"ts" INTEGER NOT NULL,
"value" REAL,
PRIMARY KEY ("device_id")
); 猜测是

  1. 把 WITHOUT ROWID 联合主键的第一列误渲染成 INTEGER PRIMARY KEY AUTOINCREMENT;
  2. 又根据 pragma 把联合主键整体再追加一遍,就出现了“声明两次主键”。

如何复现?/ How can we reproduce it?

No response

版本与系统 / Version and system

No response

截图、日志或其他信息 / Screenshots, logs, or anything else

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions