SQLite修改字段类型

2018/07/07

243

SQLite不支持修改字段类型,当使用GUI工具修改后,数据会清空。

解决办法:

  1. 添加新字段
  2. 重命名表
  3. 创建新表
  4. 把备份表数据插入到新表
  5. 删除备份表

代码如下:

alter table Articles add column Status  INTEGER;

alter table Articles rename to Articles1;
CREATE TABLE "Articles" 
( 
	"Id" INTEGER NOT NULL CONSTRAINT "PK_Articles" PRIMARY KEY AUTOINCREMENT,
	"Title" nvarchar(200) NOT NULL,
	"Content" ntext NULL,
	"CategoryId" INTEGER NOT NULL,
	"CreateTime" TEXT NOT NULL,
	"ViewCount" INTEGER NOT NULL,
	"Status" INTEGER NOT NULL
);

insert into Articles(Id,Title,Content,CategoryId,CreateTime,ViewCount,Status)
    select Id,Title,Content,CategoryId,CreateTime,ViewCount,[State] from Articles1;
		
drop table Articles1;
评论