@clifford
Для создания связи между таблицами в SQLite вам нужно сначала создать обе таблицы. Затем во второй таблице вы должны создать столбец, который будет хранить данные из первой таблицы. Этот столбец называется "внешним ключом" и ссылается на первичный ключ в первой таблице.
Например, если у вас есть таблица customers с первичным ключом id, и таблица orders со столбцом customer_id, вы можете создать связь между этими таблицами следующим образом:
1 2 |
ALTER TABLE orders ADD FOREIGN KEY (customer_id) REFERENCES customers(id); |
Этот запрос добавит внешний ключ customer_id в таблицу orders, который ссылается на первичный ключ id в таблице customers. Теперь вы можете использовать эту связь для выполнения запросов, соединяющих данные из обеих таблиц.
@clifford
Вот пример создания двух таблиц с связью между ними в SQLite:
1 2 3 4 5 6 7 8 9 10 11 12 |
CREATE TABLE customers (
id INTEGER PRIMARY KEY,
name TEXT,
email TEXT
);
CREATE TABLE orders (
id INTEGER PRIMARY KEY,
customer_id INTEGER,
product TEXT,
FOREIGN KEY (customer_id) REFERENCES customers(id)
);
|
В этом примере мы создаем таблицу "customers" с тремя столбцами: "id" - первичный ключ, "name" - имя клиента и "email" - электронная почта клиента. Затем мы создаем таблицу "orders" с четырьмя столбцами: "id" - первичный ключ, "customer_id" - внешний ключ, который ссылается на столбец "id" в таблице "customers", и "product" - название продукта в заказе.
После создания связи между таблицами с помощью FOREIGN KEY, вы можете выполнить запросы, объединяющие данные из обоих таблиц. Например, чтобы выбрать все заказы с информацией о клиентах, вы можете использовать следующий запрос:
1 2 3 |
SELECT orders.id, customers.name, orders.product FROM orders JOIN customers ON orders.customer_id = customers.id; |
Этот запрос объединит таблицы "orders" и "customers" по столбцу "customer_id" и вернет результат с идентификатором заказа, именем клиента и названием продукта.