Android使用MySQL已经连接数据库登录成功,如何获取其他数据
时间: 2023-06-13 09:08:21 浏览: 102
一般来说,获取其他数据的步骤如下:
1. 创建一个能够执行 SQL 语句的类,比如 DBHelper。
2. 在 DBHelper 类中创建一个方法,用来执行 SQL 语句,比如 execSQL(String sql)。
3. 在执行 SQL 语句之前,需要先获取一个 SQLiteDatabase 对象,可以通过调用 getWritableDatabase() 或 getReadableDatabase() 方法来获取。
4. 执行 SQL 语句后,可以通过调用 SQLiteDatabase 对象的方法来获取查询结果,比如 query()。
下面是一个示例代码:
```java
public class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydatabase.db";
private static final int DATABASE_VERSION = 1;
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
// 创建表格等初始化操作
db.execSQL("CREATE TABLE users (_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 数据库升级操作
}
public void addUser(String name, int age) {
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", name);
values.put("age", age);
db.insert("users", null, values);
}
public List<User> getUsers() {
List<User> users = new ArrayList<>();
SQLiteDatabase db = getReadableDatabase();
Cursor cursor = db.query("users", null, null, null, null, null, null);
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("_id"));
String name = cursor.getString(cursor.getColumnIndex("name"));
int age = cursor.getInt(cursor.getColumnIndex("age"));
User user = new User(id, name, age);
users.add(user);
}
cursor.close();
return users;
}
}
```
在上面的代码中,DBHelper 类继承自 SQLiteOpenHelper,用来创建和升级数据库。addUser() 方法用来添加用户数据,getUsers() 方法用来获取用户数据。在 getUsers() 方法中,我们首先获取了一个 SQLiteDatabase 对象,然后通过 query() 方法来查询 users 表格中的所有数据。最后,我们将查询结果封装成 User 对象,并返回一个 User 对象列表。
阅读全文