sqlite3添加、修改列名
sqlite3添加、修改列名
首先,请放弃alter吧。 sqlite官方说明如下:
比如说你要修改的表名是A,方法步骤如下: 1.新建一个临时表T,这个T和表A具有相同的列。 2.把A中所有的数据都通过insert语句插入到T中 3.删除表A 4.新建表A,这时表A的列名就是你想要的结果,以前想修改的列名是什么,这时候就定义成什么,以前要删除的某个列,那么在定义的时候就不定义它。 5.恢复数据,把数据通过insert语句插入A,结构是insert into A select ... from tablen T 6.删除临时表T。 这个办法太笨拙了,但是目前还没有更好的办法啊,啊,啊,啊,啊,啊,啊 ,啊, 啊, 啊,啊, 啊, 查了半天sqlite的手册,没找到怎么修改列名。最后用了一个很笨的方法。 首先重命名post表。 ALTER TABLE post RENAME TO tmp_post; ?1234 CREATE TABLE post(id integer primary key autoincrement,tb_l varchar(128) not null); insert into post (tb_l) select tbl from tmp_post; insert into post select * from tmp_talbe; -------------------------------------- 使用Sqliteman修改表时,遇到一个问题,每当添加或修改列信息时,作为主键的信息就会丢失,所以只能自己写Sql执行了。示例: ALTER TABLE "store_productcategory" ADD COLUMN "DisplayOrder" INT DEFAULT(0) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |