猿问

如何重命名SQLite数据库表中的列?

如何重命名SQLite数据库表中的列?

我需要在SQLite数据库的某些表中重命名几列。我知道之前在stackoverflow上已经提出了类似的问题,但它一般用于SQL,并且没有提到SQLite的情况。

ALTER TABLE的SQLite文档中,我认为不可能“轻松”地做这样的事情(即单个ALTER TABLE语句)。

我想知道有人知道用SQLite做这种事情的通用SQL方法。


叮当猫咪
浏览 1191回答 3
3回答

哈士奇WWW

假设您有一个表,需要将“colb”重命名为“col_b”:首先重命名旧表:ALTER TABLE orig_table_name RENAME TO tmp_table_name;然后根据旧表创建新表,但使用更新的列名:CREATE TABLE orig_table_name (   col_a INT, col_b INT);然后从原始表中复制内容。INSERT INTO orig_table_name(col_a, col_b)SELECT col_a, colbFROM tmp_table_name;最后,放下旧桌子。DROP TABLE tmp_table_name;将所有这些包装在一起BEGIN TRANSACTION;并且COMMIT;也可能是一个好主意。

Helenr

四处搜索,我发现这个多平台(Linux | Mac | Windows)图形工具名为DB Browser for SQLite,它实际上允许用户以非常友好的方式重命名列!编辑| 修改表| 选择表| 编辑字段。点击!瞧!但是,如果有人想分享这样做的程序化方式,我很高兴知道!
随时随地看视频慕课网APP
我要回答