我想写一个函数来删除sqlite中的列(因为有时我可能想删除太旧的列)。如何将整个列(包括数据类型)从sqlite表复制到使用python的另一个表中?
0
A
回答
1
SQLite的有限ALTER TABLE支持 ,你可以用它来添加列 表的末尾,或更改表的 名称。如果要在表格的 结构中更改 更复杂的更改,则必须重新创建 表格。您可以将现有数据 保存到临时表中,删除旧的 表,创建新表,然后将 中的数据从临时 表中复制回来。
例如,假设你有一个名为“T1”的列名“一”, “B”表 ,而“C”,并要 从该表中删除列“C”。该 以下步骤说明此 怎么可以这样做:
BEGIN TRANSACTION; CREATE TEMPORARY TABLE t1_backup(a,b); INSERT INTO t1_backup SELECT a,b FROM t1; DROP TABLE t1; CREATE TABLE t1(a,b); INSERT INTO t1 SELECT a,b FROM t1_backup; DROP TABLE t1_backup; COMMIT;
+0
更简单的方法是将ALTER TABLE重新命名为旧表,然后只复制一次数据并删除旧表。双重复制可能会导致更紧凑的数据库。 – 2011-03-10 11:54:49
相关问题
- 1. sqlite将数据从一个表复制到另一个表
- 2. 在SQLite中将列数据从一个表复制到另一个
- 3. mysql将列数据类型复制到另一个表
- 4. 将图像数据类型从一个表复制到另一个表
- 5. 将三列从一个数据库表复制到另一个
- 6. 将特定列从一个数据表复制到另一个
- 7. 将列从一个表复制到另一个表时的类型requirments
- 8. 如何将数据从一个表复制到MySQL中的另一个新表?
- 9. Python的sqlite从一个数据库复制到另一个
- 10. 将数据从一个表复制/插入到另一个表
- 11. 将数据从一个表复制到另一个新表,其中列未知
- 12. 8086,将数据从一个列表复制到另一个列表
- 13. 在SQLite中,如何将数据从一列复制到同一个表中的另一列?
- 14. 将某个列值从一个表复制到另一个表
- 15. 如何将一行从一个表复制到另一个表
- 16. 将数据从一个数据表复制到另一个数据表
- 17. 将数据从一个数据库表复制到另一个数据库表?
- 18. 使用游标将数据从一个表复制到另一个表
- 19. 如何将数据从表复制到另一个
- 20. 将MySQL列从一个表复制到另一个表
- 21. MySql表类型,如何自动将列数据从一个表格绘制到另一个表格?
- 22. 如何使用C#将表单中的数据复制到另一个表单?
- 23. mysql列数据从一个表复制到另一个加入?
- 24. 从一个表复制列数据到另一个
- 25. 如何在SQLite中高效地将行数据从一个表复制到另一个表android
- 26. 无法将datacolumn从一个数据表复制到另一个
- 27. 将部分数据从一个表复制到另一个C#
- 28. 如何将数据从一个表复制到另一个“除”一个场
- 29. 使用SQL将整个数据从一个表复制到另一个表的存储过程
- 30. 如何在同一个数据库中将大量数据从一个表复制到另一个表中?
是在同一个数据库中的其他表,还是不同的? – 2011-03-10 09:34:25
目前尚不清楚你的模式是什么,但如果你必须定期删除“太旧”的列,你可能需要重新考虑你的模式设计。 – Keith 2011-03-10 10:00:38
@Keith:我不知道OP在做什么,但常见的用例是升级应用程序。当模式在版本之间改变时,新版本需要有一个代码来适当地改变表格。 – 2011-03-10 11:59:16