这个方法怎么只能添加一行数据?
我在db.execsQL 下面又加了一行(再加一列数据),但最后打印出来还是只有第一行数据。
我在db.execsQL 下面又加了一行(再加一列数据),但最后打印出来还是只有第一行数据。
2016-09-05
你应该是在程序运行之后又加了一行数据吧?
如果是的话,是因为onCreate(Bundle savedInstanceState)方法只有在首次创建数据库时才会被调用,你运行过程序后创建的数据库已经存在,后面再次运行,onCreate(Bundle savedInstanceState)方法不会被调用,所以你在里面加的数据就没有意义。
你可以在模拟器上将应用卸载或清空该应用的data,这样创建的数据库就不存在了,这时你再次运行程序,即可。
还有一种方法使用onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)方法,添加如下代码:
db.execSQL("drop table if exists stutb"); onCreate(db);
在MainActivity中修改代码:
DBOpenHelper helper = new DBOpenHelper(this, DATABASENAME,null,2);
举报