sqlite3中对表字段的增删改查

sqlite3中对表字段的增删改查,第1张

概述android今天在做数据库升级时,碰到要对原来数据库中一张表的一个字段名进行修改,但是用:  alter table tablename rename column oldColumnName to newColumnName;  始终不成功,后面查阅相关信息:  SQLite supports a limited subset of ALTER TABLE. The ALTER TABLE c androID今天在做数据库升级时,碰到要对原来数据库中一张表的一个字段名进行修改,但是用:
alter table tablename rename column oldColumnname to newColumnname;
始终不成功,后面查阅相关信息:
sqlite supports a limited subset of ALTER table. The ALTER table command in sqlite allows the user to rename a table or to add a new column to an existing table. It is not possible to rename a column,remove a column,or add or remove constraints from a table.
sqlite支持一个更改表内容的有限子集,就是说在sqlite更改表的命令中,只允许用户重命名表名或者增加多一个列到一个的表中。而重命名一个字段名和删除一个字段、或者增加和删除系统规定的参数这些 *** 作是不可能的。
后面只能先重命名原来的表,之后新建一张表,把原来的数据复制到新表中,最后删除掉旧的表就可以了。效率有点低,但是没办法。
String rename_sql = "ALTER table "+DB.UserInfotable.table_name+" REname TO temp";
String insert_sql = "INSERT INTO "+DB.UserInfotable.table_name+" SELECT * FROM temp";
String drop_sql = "DROP table temp";
db.execsql(rename_sql);
db.execsql(DB.UserInfotable.CREATE_table);
db.execsql(insert_sql);
db.execsql(drop_sql);

注意执行的顺序


如果要在sqlite的表中增加一个字段,方法如下:

执行一个语句即可,比如下面的语句给table1语句增加一个AAA字段,类型为VARCHAR(10):ALTER table `table1` ADD `AAAA` VARCHAR(10) NOT NulL ;
总结

以上是内存溢出为你收集整理的sqlite3中对表字段的增删改查全部内容,希望文章能够帮你解决sqlite3中对表字段的增删改查所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1174450.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存