Changes .dump and .schema commands to support triggers, multiple indexes, multiple tables, and so on.
Related Issues
Closes #134
Closes #138
Closes #129
Visual reference
Before:
→ .schema
CREATE TRIGGER a AFTER INSERT ON q BEGIN
SELECT 1;
END
CREATE INDEX bar ON t (t)
CREATE UNIQUE INDEX foo ON t (t)
CREATE TABLE q (t text)
CREATE TRIGGER q AFTER INSERT ON t BEGIN
SELECT 1;
END
CREATE TABLE t (t text)
CREATE TRIGGER t AFTER INSERT ON t BEGIN
SELECT 1;
END
→ .dump
PRAGMA foreign_keys=OFF;
CREATE TABLE t (t text)CREATE TRIGGER t AFTER INSERT ON t BEGIN
SELECT 1;
ENDCREATE TRIGGER q AFTER INSERT ON t BEGIN
SELECT 1;
END;
INSERT INTO t VALUES ('x');
CREATE UNIQUE INDEX foo ON t (t)CREATE INDEX bar ON t (t);
CREATE TABLE q (t text)CREATE TRIGGER a AFTER INSERT ON q BEGIN
SELECT 1;
END;
INSERT INTO q VALUES ('x');
After:
→ .schema
CREATE TABLE q (t text);
CREATE TRIGGER a AFTER INSERT ON q BEGIN
SELECT 1;
END;
CREATE TABLE t (t text);
CREATE TRIGGER t AFTER INSERT ON t BEGIN
SELECT 1;
END;
CREATE UNIQUE INDEX foo ON t (t);
CREATE INDEX bar ON t (t);
CREATE TRIGGER q AFTER INSERT ON t BEGIN
SELECT 1;
END;
→ .dump
PRAGMA foreign_keys=OFF;
CREATE TABLE t (t text);
INSERT INTO t VALUES ('x');
CREATE TRIGGER t AFTER INSERT ON t BEGIN
SELECT 1;
END;
CREATE UNIQUE INDEX foo ON t (t);
CREATE INDEX bar ON t (t);
CREATE TRIGGER q AFTER INSERT ON t BEGIN
SELECT 1;
END;
CREATE TABLE q (t text);
INSERT INTO q VALUES ('x');
CREATE TRIGGER a AFTER INSERT ON q BEGIN
SELECT 1;
END;
Description
Changes
.dump
and.schema
commands to support triggers, multiple indexes, multiple tables, and so on.Related Issues
Visual reference
Before:
After: