在SQLite中重命名/创建/插入/删除表时,触发器/索引会发生什么变化?
当我重命名/删除一个表SQLite时,触发器/索引会发生什么变化 我正在运行并升级脚本,在该脚本中,我向表中添加了一列,因此我需要执行以下操作:在SQLite中重命名/创建/插入/删除表时,触发器/索引会发生什么变化?,sqlite,Sqlite,当我重命名/删除一个表SQLite时,触发器/索引会发生什么变化 我正在运行并升级脚本,在该脚本中,我向表中添加了一列,因此我需要执行以下操作: ALTER TABLE [Entry] RENAME TO [Entry_temp]; CREATE TABLE [Entry] ( [EntryID] integer PRIMARY KEY AUTOINCREMENT NOT NULL, ... ) INSERT INTO [Entry] (...) SELECT ...
ALTER TABLE [Entry] RENAME TO [Entry_temp];
CREATE TABLE [Entry] (
[EntryID] integer PRIMARY KEY AUTOINCREMENT NOT NULL,
...
)
INSERT INTO [Entry]
(...)
SELECT ...
FROM [Entry_temp];
DROP TABLE [Entry_temp];
条目表有一个触发器和一个索引
-- these were created before
CREATE TRIGGER Entry_Version_Update AFTER UPDATE ON [Entry]
BEGIN
UPDATE [Entry] SET [Version] = [Version] + 1
WHERE [EntryID] = new.[EntryID];
END;
CREATE INDEX ix_Entry_ClientID ON [Entry] ([ClientID]);
我是否必须在更新之前删除它们并在更新之后创建一个新的?或者我可以离开它们吗?删除表时,索引将自动删除。触发器也将自动删除。