Sql 如何为同一表中的其他列生成键?

Sql 如何为同一表中的其他列生成键?,sql,database,sqlite,Sql,Database,Sqlite,我正在用sqlite3制作一个数据库。这是我的桌子: CREATE TABLE IF NOT EXISTS RESIDENTS( ID VARCHAR(10) PRIMARY KEY, Roommate_ID VARCHAR(10), Name VARCHAR(30) NOT NULL); 我希望能够让居民彼此配对。通过更改一名住户的室友ID,该住户应将其室友ID更改为原始住户的ID。如果删除一名住户,则其室友的室友ID应为空。我该怎么做呢?你需要一个触发器来做

我正在用sqlite3制作一个数据库。这是我的桌子:

CREATE TABLE IF NOT EXISTS RESIDENTS(
ID          VARCHAR(10) PRIMARY KEY,
Roommate_ID VARCHAR(10),
Name        VARCHAR(30) NOT NULL);

我希望能够让居民彼此配对。通过更改一名住户的室友ID,该住户应将其室友ID更改为原始住户的ID。如果删除一名住户,则其室友的室友ID应为空。我该怎么做呢?

你需要一个触发器来做这件事。如果有三个人是室友会怎么样?只有两个人可以是室友。我该如何触发?