SQLiteStudio:如何创建唯一行(不是列)?

SQLiteStudio: How to create unique row (not column)?

我想用 SqliteStudio 创建一个只允许 唯一行 的 table:

这应该有效:

|--ID--|--Column01--|--Column01--|
| 1     "brun/brune"   "brown"   |
| 2     "yellow"       "brown"   |

这不应该工作:

|--ID--|--Column01--|--Column01--|
|   1    "brun/brune"   "brown"  |
|   2    "brun/brune"   "brown"  |

希望你能帮助我 C: ~亨利

像这样创建一个多值主键

CREATE TABLE something (
  column01, 
  column02, 
  PRIMARY KEY (column01, column02)
);

Both single column and composite (multiple column) primary keys are supported.

https://www.sqlite.org/lang_createtable.html

您可以在 table 中添加一个 UNIQUE CONSTRAINT:

Create Table YourTable
(
    Id       INTEGER PRIMARY KEY AUTOINCREMENT,
    Column01 VARCHAR,
    Column02 VARCHAR,
    CONSTRAINT col01_col02_unique UNIQUE (Column01, Column02)
)

在下面的例子中只有一个主键(PK_Person)。但是,主键的值由两列(ID + 姓氏)组成。

CREATE TABLE mytable (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT PK_name PRIMARY KEY (ID,LastName)
);

由于问题是在 SQLiteStudio 的上下文中提出的 - 您可以在 table window 中创建复合约束。虽然您可以在 table window 的上半部分添加列,但 window 的下半部分用于管理复合约束: