Reputation: 22255
Say, if I first did the following to create a table using SQLite3 databse:
CREATE TABLE `t3` (
`f0` INTEGER PRIMARY KEY AUTOINCREMENT,
`f1` INTEGER NOT NULL REFERENCES `t2`(`f0`) ON DELETE CASCADE,
`f2` INTEGER NOT NULL REFERENCES `t1`(`f0`) ON DELETE CASCADE,
`f3` INTEGER NOT NULL,
`f4` BLOB,
`f5` BLOB,
`f6` BLOB,
`f7` BLOB,
`f8` BLOB,
`f9` BLOB,
`fa` BLOB)
and then created an index on that table:
CREATE INDEX `it31` ON `t3`(`f1`)
So after this table had some rows inserted into it, if I removed it by doing:
DROP TABLE `t3`
Does it also remove the it31
index, or do I need to remove the index prior to removing the table?
Upvotes: 6
Views: 1411
Reputation: 74645
Yes, the documentation states:
All indices and triggers associated with the table are also deleted.
From https://sqlite.org/lang_droptable.html
Upvotes: 8