ITPub博客

首页 > > > SQLite不能创建表

SQLite不能创建表

作者:netroop 时间:2019-08-28 14:08:19 0 删除 编辑
我先上代码:
MainActivity.java:
public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    MyOpenHelper myOpenHelper = new MyOpenHelper(getApplicationContext());
    //创建或打开数据库
    SQLiteDatabase writableDatabase = myOpenHelper.getWritableDatabase();
    //创建或打开数据库,如果磁盘满了,返回只读的数据库
    SQLiteDatabase readableDatabase = myOpenHelper.getReadableDatabase();
}
}

public class MyOpenHelper extends SQLiteOpenHelper {

public MyOpenHelper(@Nullable Context context) {

    super(context, "lgq.db", null, 1);
}

@Override
/**
 *数据库第一次创建的始后调用
 * 那么这个方法特别适合做表结构的初始化
 *
 * */
public void onCreate(SQLiteDatabase db) {
    //id 一般以_id去写

    db.execSQL("create table Student ("
            + "id integer primary key autoincrement," + "name text,"
            + "score real," + "age integer," + "gender text)");
    System.out.println("创建完成");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

}
}

每次运行之前会将数据库删除,语句System.out.println("创建完成");会执行,在Android4.4运行正常,但在6.0上不能创建表,应该是db.execSQL()语句没有执行。
问:为什么在Android4.4上正常运行,但在6.0上却不能创建表?
求大神指教。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4741/viewspace-3131861/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-04-25

  • 博文量
    152
  • 访问量
    1070