大佬教程收集整理的这篇文章主要介绍了赵雅智_sqlite修改表结构,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
1.更改数据库版本号(每次更新都一定要进行版本的升级)
2.更新语句一条一条写,不能并列写
例如:
public voID onUpgrade(sqliteDatabase db,int arg1,int arg2) { db.execsql("alter table users add userage integer;<span style="Font-family: Arial,Helvetica,sans-serif;">alter table users add usersalary doouble</span>"); }上面语句只能执行“;”前的语句,后面的无法插入。
所以要将代码改为下式代码,才能两条语句都执行。
public voID onUpgrade(sqliteDatabase db,int arg2) { db.execsql("alter table users add userage integer"); db.execsql("alter table users add usersalary doouble"); }
具体代码:
package com.example.androID_sqlite.database; import androID.content.Context; import androID.database.sqlite.sqliteDatabase; import androID.database.sqlite.sqliteDatabase.cursorFactory; import androID.database.sqlite.sqliteOpenHelper; public class DatabaseHelper extends sqliteOpenHelper { // 数据库名称 private static final String DATABASename = "csdn.db"; // 数据库更新版本号 private static int databaseBersion = 2; /** * * @param context * :上下文对象 * @param name * :数据库名称 * @param factory * :cursor工厂对象,可以设置null.采用默认的cursorFactory对象 * @param version * :数据库版本号 */ public DatabaseHelper(Context context) { super(context,DATABASename,null,databaseBersion); } /** * 当数据库第一次创建的时候会调用这个方法 */ @OverrIDe public voID onCreate(sqliteDatabase db) { db.execsql("create table users(userid integer priMary key autoincrement,username VARCHAR(20))"); } /** * 当数据库的版本升级的时候,自动调用这个方法(根据数据库的版本号) */ @OverrIDe public voID onUpgrade(sqliteDatabase db,int arg2) { db.execsql("alter table users add userage integer"); db.execsql("alter table users add usersalary doouble"); System.out.println("-----------------升级了-----------------"); } }
package com.example.androID_sqlite.test; import com.example.androID_sqlite.database.DatabaseHelper; import androID.test.AndroIDTESTCase; public class DatabaseTese extends AndroIDTESTCase { public voID createDatabase() { DatabaseHelper dh = new DatabaseHelper(getContext()); dh.getWritableDatabase(); } }
控制台输出:
cmd命令行输出:
以上是大佬教程为你收集整理的赵雅智_sqlite修改表结构全部内容,希望文章能够帮你解决赵雅智_sqlite修改表结构所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。