Допустим, у вас есть три базовые таблицы, которые реализуют отношение «многие ко многим» между задачами и категориями:
CREATE TABLE task(
id INTEGER AUTOINCREMENT PRIMARY KEY NOT NULL,
name INTEGER NOT NULL,
description INTEGER NOT NULL
);
CREATE TABLE category(
id INTEGER AUTOINCREMENT PRIMARY KEY NOT NULL,
name TEXT NOT NULL
);
CREATE TABLE task_category(
task_id INTEGER,
category_id INTEGER,
);
Если я хочу вставить в свою базу данных задачу с именем «write script» с некоторым описанием «Я написал скрипт на python». что связано с категориями "python" и "scripting", как мне это сделать? Предположим, что категории python и scripting уже существуют в базе данных.
Я взглянул на этот вопрос: SQLite отношение многих ко многим?
Кажется, что некоторая реализация внешних ключей может быть полезной, но я до сих пор не знаю, как будет выглядеть оператор INSERT.
Моя лучшая попытка - вставить задачу в таблицу задач, затем сделать выбор, чтобы получить задание, которое я только что вставил, с его идентификатором, а затем вручную связать этот идентификатор с категориями в таблице task_category. Это не очень эффективный способ сделать это.
Каков стандартный способ вставки записи в базу данных sqlite и связывания ее с отношением «многие ко многим»?