【发布时间】:2019-08-02 20:02:12
【问题描述】:
我正在关注一个关于如何为 android 应用程序制作 sqlite 数据库的 youtube 视频,但我遇到了这个问题:
mSQLiteDb = mMyHelper.getWritableDatabase();
在这一行它说getWritableDatabase() 无法解决
谁能帮我解决这个问题?
MainActivity.java
package com.example.sqlitedb;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private EditText mNameEt;
private EditText mPhoneEt;
private Object mMyHelper;
private SQLiteDatabase mSQLiteDb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mNameEt = (EditText)findViewById(R.id.editText);
mPhoneEt = (EditText)findViewById(R.id.editText2);
mMyHelper = new MyHelper(MainActivity.this,"STUDDB",null,1);
mSQLiteDb = mMyHelper.getWritableDatabase();
}
public void insertData(View view) {
}
public void readData(View view) {
}
}
MyHelper.java
package com.example.sqlitedb;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class MyHelper extends SQLiteOpenHelper {
public MyHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL("create table student(_id integer primary key, name text, phone text)");
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
谢谢
【问题讨论】:
-
我强烈建议您迁移到 Room Persistent Library。
标签: android sql database sqlite