关于Android 中sqlite 报can not open database错误

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

代码:

package com.example.ch_2013_4_5sqlite;

import android.annotation.SuppressLint;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;

@SuppressLint("SdCardPath")
public class sqliteDB {
	//
	SQLiteDatabase sqLiteDatabase;
	Context context;

	//
	public sqliteDB(Context context) {
		//
		this.context = context;
	}

	/**
	 * 新建或打开数据库
	 */
	public void OnCreateOrOpenDatabase() {
		
		sqLiteDatabase = context.openOrCreateDatabase(context
				.getFilesDir().getAbsolutePath().replace("files", "databases")
				+ "/" + "mysqlite.db", 0, null);
	}

	/**
	 * 建表
	 */
	public void createTable() {
		sqLiteDatabase
				.execSQL("create table TblUser(id integer primary key autoincrement,name text)");
	}

	/**
	 * 插入数据
	 */
	public void insertUser() {
		sqLiteDatabase.execSQL("insert into TblUser(name) values('u1')");
	}
}
打开数据库的方法中 , 如果用SqliteDataBaseSQLiteDatabase 会报打不开数据库的错误。

使用 context.openOrCreateDatabase 会解决这个问题 ,context 是调用上下文( Activity)


 


转载于:https://my.oschina.net/u/272065/blog/120745

你可能感兴趣的:(关于Android 中sqlite 报can not open database错误)