SQLite – 更改表的列类型?

前端之家收集整理的这篇文章主要介绍了SQLite – 更改表的列类型?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开始涉及一个小数据库的项目,我正在考虑使用sqlite。
如果我创建一个表,并将其中一列定义为文本,但所有存储的值都是整数 – 有没有办法更改列的数据类型?我正在使用sqlite Manager,我找不到一个允许我这样做的功能。我可以使用sql命令来执行,还是sqlite的限制?
可能,即使有这种限制,可以找到一些方法,并创建一个带有所需列类型的新表,然后将数据导入到其中。

问候,
缺口

sqlite不完全支持ALTER TABLE语句。您唯一可以做的是重命名表和/或添加列。如果要重命名列,最佳选项是使用新列数据类型/名称创建新表,并删除旧表以重新命名新表。

让我们说,你有一个表,需要将“field-1”重命名为“field-2”:
第一==>>>重命名旧表:

ALTER TABLE original RENAME TO tmp;

现在,根据旧表创建新表,但更新列名称
==>>创建一个带有更新列的表

CREATE TABLE original(
    field_a INT,field_b INT
    );

然后从原始表格中复制内容

INSERT INTO origignal(field_a,field_b)
   SELECT field_a,field_b
   FROM tmp;

最后,放下旧桌子。

DROP TABLE tmp;

猜你在找的Sqlite相关文章