首页 > 解决方案 > 删除查询使用 expo-sqlite 从两个表中删除条目

问题描述

我有两个非常简单的表,它们之间没有任何约束:

CREATE TABLE groups (groupId INTEGER PRIMARY KEY AUTOINCREMENT, groupName TEXT)

CREATE TABLE savedRuns (runId INTEGER PRIMARY KEY AUTOINCREMENT, runName TEXT, groupId INT NULL, startTime TEXT, stopTime TEXT, elapsedMilliseconds INT)

每当我从group表中删除一个条目时,savedRuns其中具有相同条目的条目groupId也会被删除。我不要那个!

这是删除查询:

DELETE FROM groups WHERE groupId = 1

我无法理解这种行为,因为两个表之间没有外键约束!

expo-sqlite在我的 React Native 应用程序中使用库中的 SQlite。

我的最终目标是启用外键并在表中设置groupId为,但我认为我应该首先解决第一个问题。nullsavedRuns

我什至跑PRAGMA foreign_keys了,结果是 0

标签: react-nativesqliteexpo-sqlite

解决方案


上面的所有查询都很好。问题出在我的SELECT查询中,它没有显示表中没有 a 的groupId条目groups

在我的 SELECT 查询中更改为INNER JOIN解决了这个问题!LEFT JOIN


推荐阅读