温馨提示×

android如何获取数据库数据

小亿
84
2024-03-19 18:03:36
栏目: 编程语言

在Android中,可以使用SQLite数据库来存储数据并在应用中获取数据。以下是一个简单的示例代码来获取数据库数据:

  1. 首先,创建一个SQLiteOpenHelper类来管理数据库的创建和升级:
public class DatabaseHelper extends SQLiteOpenHelper {

    private static final String DATABASE_NAME = "mydatabase";
    private static final int DATABASE_VERSION = 1;

    public DatabaseHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        // 创建数据库表
        db.execSQL("CREATE TABLE mytable (id INTEGER PRIMARY KEY, name TEXT)");
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // 升级数据库
        db.execSQL("DROP TABLE IF EXISTS mytable");
        onCreate(db);
    }
}
  1. 创建一个数据访问类来操作数据库:
public class DataAccess {

    private DatabaseHelper dbHelper;

    public DataAccess(Context context) {
        dbHelper = new DatabaseHelper(context);
    }

    public List<String> getData() {
        List<String> data = new ArrayList<>();

        SQLiteDatabase db = dbHelper.getReadableDatabase();
        Cursor cursor = db.rawQuery("SELECT * FROM mytable", null);

        while (cursor.moveToNext()) {
            String name = cursor.getString(cursor.getColumnIndex("name"));
            data.add(name);
        }

        cursor.close();
        db.close();

        return data;
    }
}
  1. 在Activity中使用DataAccess类来获取数据库数据:
public class MainActivity extends AppCompatActivity {

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

        DataAccess dataAccess = new DataAccess(this);
        List<String> data = dataAccess.getData();

        for (String name : data) {
            Log.d("Database Data", name);
        }
    }
}

以上代码演示了如何在Android应用中获取数据库数据。首先创建一个SQLiteOpenHelper类来管理数据库的创建和升级,然后创建一个数据访问类来操作数据库,最后在Activity中使用数据访问类来获取数据库数据并展示。

0