将ID添加到SQLite中多对多的联接表中

将ID添加到SQLite中多对多的联接表中,sqlite,join,many-to-many,Sqlite,Join,Many To Many,我正在使用SQLite Studio 3.3处理一个简单的视频数据库。这是我正在使用的三张桌子 -- Table: Videos DROP TABLE IF EXISTS Videos; CREATE TABLE Videos ( id INTEGER PRIMARY KEY ASC AUTOINCREMENT UNIQUE NOT NULL, vid_tit

我正在使用SQLite Studio 3.3处理一个简单的视频数据库。这是我正在使用的三张桌子

-- Table: Videos
DROP TABLE IF EXISTS Videos;

CREATE TABLE Videos (
    id           INTEGER PRIMARY KEY ASC AUTOINCREMENT
                         UNIQUE
                         NOT NULL,
    vid_title    TEXT    NOT NULL
                         UNIQUE,
    vid_rel_date DATE
);

-- Table: People
DROP TABLE IF EXISTS People;

CREATE TABLE People (
    id                INTEGER PRIMARY KEY AUTOINCREMENT
                              NOT NULL
                              UNIQUE,
    person_name_first TEXT    NOT NULL,
    person_name_last  TEXT
);

-- Table: _Videos_People
DROP TABLE IF EXISTS _Videos_People;

CREATE TABLE _Videos_People (
    id        INTEGER PRIMARY KEY AUTOINCREMENT
                      UNIQUE
                      NOT NULL,
    vid_id    INTEGER REFERENCES Videos (id),
    person_id INTEGER REFERENCES People (id) 
);
我用这些语句向数据库中添加一个视频和一个人,并获取这两个ID

INSERT OR IGNORE INTO Videos (
                       vid_title,
                       vid_rel_date
                   )
                   VALUES (
                       'The Call Of The Wild',
                       '2020'
                   );

INSERT OR IGNORE INTO People (
                       person_name_first,
                       person_name_last
                   )
                   VALUES (
                       'Harrison',
                       'Ford'
                   );
                   
SELECT id
  FROM Videos
  WHERE vid_title = 'The Call Of The Wild'
    AND vid_rel_date = '2020';

SELECT id
  FROM People
  WHERE person_name_first = 'Harrison'
    AND person_name_last = 'Ford';
这就是我被困的地方。一旦我有了这两个ID,我如何将它们添加到_Videos_People join表中,以便该人与视频关联

我找到了,但我不知道如何在我的情况下使用它(或者如果我应该)


如果我完全错了,我愿意接受建议。我不熟悉这一点,因此非常感谢您的帮助。

您可以使用此
插入
语句:

INSERT INTO _Videos_People (vid_id, person_id) VALUES (
  (SELECT id FROM Videos WHERE vid_title = 'The Call Of The Wild' AND vid_rel_date = '2020'),
  (SELECT id FROM People WHERE person_name_first = 'Harrison' AND person_name_last = 'Ford')
);

请参阅。

感谢您的快速响应,而“dbfiddle”网站看起来是我真正可以使用的。