美文网首页Android知识Android技术知识Android开发经验谈
Android使用SQLite时无法alter table的一个

Android使用SQLite时无法alter table的一个

作者: 三水nami | 来源:发表于2017-09-18 20:56 被阅读0次

最近因为一些需求,需要经常给sqlite表添加列或者删除列。然而很奇怪的是,下列语句执行不会报错,但打开表查看后发现根本没有执行到:

db_usr.execSQL("alter table "+DATABASEINFO.USRTABLE_NAME+ " add column " + name + " integer");

然而下列语句可以成功执行,只不过新列的数据类型为空

db_usr.execSQL("alter table "+DATABASEINFO.USRTABLE_NAME+ " add column " + name + "integer");
//因为integer前面忘了打空格

google很久没有结果后,快要放弃挣扎的我注意到,虽然SQLite说是对大小写不敏感,但系统设置SQLite的数据类型时习惯是大写。于是试着把integer改成了INTEGER:

db_usr.execSQL("alter table "+DATABASEINFO.USRTABLE_NAME+ " add column " + name + " INTEGER");

就成功了………………至于为什么目前还是不清楚。

最近也总结了一些在开发安卓时会让SQLite出错的比较低级但初学者容易犯的错误:

  1. 在连接字符串时少打空格。比如"add column"+NAME+"integer"。应为"add column "+NAME+" INTEGER"。
  2. 不习惯大写建表语句(然后可能会出现上述问题)
  3. 从前是SQL使用者可能会习惯性在数据类型上写Boolean,String, Int之类。然而SQLite的数据类型不长这样。

相关文章

  • Android使用SQLite时无法alter table的一个

    最近因为一些需求,需要经常给sqlite表添加列或者删除列。然而很奇怪的是,下列语句执行不会报错,但打开表查看后发...

  • SQLite Alter 命令

    SQLite Alter 命令 SQLite 的 ALTER TABLE 命令不通过执行一个完整的转储和数据的重载...

  • Msql索引

    使用ALTER TABLE语句创建添加索引 使用ALTER TABLE语句创建添加索引 使用CREATE INDE...

  • 学—sql删除字段

    alter table aaa drop column name alter table语句使用示例: 【例1】将...

  • mysql 一些基础使用

    ALTER使用 添加字段ALTER TABLE table_name ADD test VARCHAR(10) C...

  • sqlite Alter 命令

    SQLite 的 ALTER TABLE 命令不通过执行一个完整的转储和数据的重载来修改已有的表。您可以使用 AL...

  • 「SQLite学习笔记」Alter 命令

    SQLite 的 ALTER TABLE 命令不通过执行一个完整的转储和数据的重载来修改已有的表。您可以使用 AL...

  • mysql---修改表结构

    使用ALTER TABLE修改表结构 1) 修改表名称 ALTER TABLE <表名> RENAME <新表名>...

  • SQLite相关

    SQLite语句 增加表字段 ALTER TABLE 表名 ADD COLNUM 字段名 字段类型 删除表字段 A...

  • android sqlite数据库 更新

    数据库更新如果是只是添加一个字段或几个,而不需要改变数据结构时, SQLite提供了ALTER TABLE命令,允...

网友评论

    本文标题:Android使用SQLite时无法alter table的一个

    本文链接:https://www.haomeiwen.com/subject/uxxisxtx.html