3
我正在处理的程序可以从使用sqlite文件的其他程序(不是我们的)导入数据。我需要在sqlite文件中不存在的索引,但我不想修改某人的数据,只是为了让它们导入它。该索引被许多查询使用。因此,我想创建一个只长住的是否有可能在sqlite中创建临时索引?
我见过参考以下明显的语法连接一个临时指数(从2003年邮件列表的邮件...):
$ sqlite3 thirdparty.sqlite
SQLite version 3.7.4
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> CREATE TEMP INDEX foo ON SomeTable(SomeCol);
Error: near "INDEX": syntax error
是否有可能做这样的事情?现在,我们只是在导入之前制作一个文件的副本,但这些文件可能很大,所以这是不切实际的。
如果我可能会建议(对于将来,由于问题已经有点老了),添加和索引,删除索引,然后运行VACUUM,不会以任何方式更改数据库。 数据损坏的可能性也很小,只有当磁盘有坏扇区时才会发生。 –