微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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;

原文地址:https://www.jb51.cc/sqlite/198020.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐