android studio数据库增删改查代码
时间: 2023-07-05 22:34:07 浏览: 78
以下是一个简单的 Android Studio 数据库增删改查的示例代码:
1. 创建一个 DBHelper 类,继承自 SQLiteOpenHelper
```java
public class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydatabase.db";
private static final int DATABASE_VERSION = 1;
private static final String TABLE_NAME = "mytable";
private static final String COLUMN_ID = "id";
private static final String COLUMN_NAME = "name";
private static final String COLUMN_AGE = "age";
private static final String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + " (" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
COLUMN_NAME + " TEXT, " +
COLUMN_AGE + " INTEGER);";
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(CREATE_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
}
```
2. 在 Activity 中定义 DBHelper 对象
```java
private DBHelper dbHelper;
```
3. 在 onCreate() 方法中初始化 DBHelper
```java
dbHelper = new DBHelper(this);
```
4. 插入数据
```java
public void insertData(String name, int age) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(DBHelper.COLUMN_NAME, name);
values.put(DBHelper.COLUMN_AGE, age);
db.insert(DBHelper.TABLE_NAME, null, values);
}
```
5. 查询数据
```java
public ArrayList<String> getData() {
ArrayList<String> list = new ArrayList<>();
SQLiteDatabase db = dbHelper.getReadableDatabase();
String[] columns = {DBHelper.COLUMN_ID, DBHelper.COLUMN_NAME, DBHelper.COLUMN_AGE};
Cursor cursor = db.query(DBHelper.TABLE_NAME, columns, null, null, null, null, null);
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex(DBHelper.COLUMN_ID));
String name = cursor.getString(cursor.getColumnIndex(DBHelper.COLUMN_NAME));
int age = cursor.getInt(cursor.getColumnIndex(DBHelper.COLUMN_AGE));
list.add(id + " " + name + " " + age);
}
return list;
}
```
6. 更新数据
```java
public void updateData(int id, String name, int age) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(DBHelper.COLUMN_NAME, name);
values.put(DBHelper.COLUMN_AGE, age);
String selection = DBHelper.COLUMN_ID + " = ?";
String[] selectionArgs = {String.valueOf(id)};
db.update(DBHelper.TABLE_NAME, values, selection, selectionArgs);
}
```
7. 删除数据
```java
public void deleteData(int id) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
String selection = DBHelper.COLUMN_ID + " = ?";
String[] selectionArgs = {String.valueOf(id)};
db.delete(DBHelper.TABLE_NAME, selection, selectionArgs);
}
```
注意:以上代码仅作为示例,实际使用时需要对异常进行处理,例如使用 try-catch 块包围数据库操作代码。