我第一次使用SQLite
。我正在为此一些YouTube教程。但是我遇到getwritabledatabase()
的错误。
SQLiteDatabase sqLiteDatabase = databaseHelper.getwritabledatabase();
如果我在Mainactivity.java
中添加此行,则我的应用将继续停止。如果删除此行,则我的应用程序将运行,但不会创建数据库。
如何解决此问题?预先感谢。
这是我的数据库类:
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "attendanceproject.db";
private static final String TABLE_NAME = "TeacherInfo";
private static final String ID = "_id";
private static final String NAME ="name";
private static final String EMAIL = "email";
private static final String PASSWORD = "password";
private static final String PHONE = "phone";
private static final int VERSION_NAME = 3;
private static final String CREATE_TABLE = "CREATE TABLE "+TABLE_NAME+"("+ID+" INTEGER PRIMARY KEY AUTOINCREMENT,"+NAME+" VARCHAR(100) NOT NULL,"+EMAIL+" TEXT NOT NULL,"+PASSWORD+" TEXT NOT NULL,"+PHONE+" VARCHAR(11) NOT NULL);";
private static final String DROP_TABLE = "DROP TABLE IF EXISTS "+TABLE_NAME;
private Context context;
public DatabaseHelper(@Nullable Context context) {
super(context,DATABASE_NAME,null,VERSION_NAME);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
try {
sqLiteDatabase.execSQL(CREATE_TABLE);
Toast.makeText(context,"Oncreate is Called",Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Toast.makeText(context,"Exception" + e,Toast.LENGTH_SHORT).show();
}
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase,int oldVersion,int newVersion) {
}
}