Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQLite中重命名/创建/插入/删除表时,触发器/索引会发生什么变化?_Sqlite - Fatal编程技术网

在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 ...

当我重命名/删除一个表SQLite时,触发器/索引会发生什么变化

我正在运行并升级脚本,在该脚本中,我向表中添加了一列,因此我需要执行以下操作:

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]);

我是否必须在更新之前删除它们并在更新之后创建一个新的?或者我可以离开它们吗?

删除表时,索引将自动删除。触发器也将自动删除。