PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE Definition (
	id integer primary key autoincrement,
	name text,
	flag integer,
	fileoffset integer
);
INSERT INTO "Definition" VALUES(1,'a',3,8);
INSERT INTO "Definition" VALUES(2,'b',3,24);
INSERT INTO "Definition" VALUES(3,'foo',2,54);
CREATE INDEX DefName on Definition (name);
CREATE TRIGGER DelDefinition after delete on Definition
begin
	delete from FunctionRelationship where caller = old.id;
	delete from Offsetof where structID = old.id;
end;
COMMIT;
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE FunctionRelationship (
	caller bigint,
	callee bigint
);
COMMIT;
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE FileDefinition (
	fileID integer,
	startDefID bigint,
	endDefID bigint
);
INSERT INTO "FileDefinition" VALUES(1,1,3);
CREATE TRIGGER DelFileDefition after delete on FileDefinition
begin
	delete from Definition where id >= old.startDefID and id <= old.endDefID;
end;
COMMIT;
