add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE B(id INTEGER PRIMARY KEY);

INSERT INTO B(id) VALUES (NULL);

SELECT * FROM B
id
1
CREATE TABLE A(id INTEGER PRIMARY KEY, b_id INTEGER REFERENCES B(id));

INSERT INTO A(b_id) VALUES (1), (2), (3), (4);

SELECT * FROM A
id b_id
1 1
2 2
3 3
4 4
PRAGMA foreign_key_check;
table rowid parent fkid
A 2 B 0
A 3 B 0
A 4 B 0
SELECT * FROM pragma_foreign_key_check();
table rowid parent fkid
A 2 B 0
A 3 B 0
A 4 B 0
SELECT "table",
GROUP_CONCAT(rowid) orphaned_rowids
FROM pragma_foreign_key_check()
GROUP BY "table";
table orphaned_rowids
A 2,3,4
UPDATE A
SET b_id = NULL
WHERE rowid IN (SELECT rowid FROM pragma_foreign_key_check() WHERE "table" = 'A')

SELECT * FROM A
id b_id
1 1
2 null
3 null
4 null