用Android Studio创建SQLite数据库,并实对现数据库的增删查改。要求所创建的数据库表中所包含的属性为:编号(id)、姓名(name)、性别(sex)、年龄(age)、身高(height),完成对数据库中内容的增删查改工作。
时间: 2024-01-19 19:04:48 浏览: 212
好的,我可以帮你解答这个问题。
首先,我们需要在 Android Studio 中创建一个新的项目。然后,在项目中创建一个 SQLite 数据库。
1. 创建 SQLite 数据库
在 Android Studio 中,可以使用 SQLiteOpenHelper 类来创建 SQLite 数据库。SQLiteOpenHelper 是一个抽象类,需要实现两个方法:
- onCreate():在第一次创建数据库时调用,一般用于创建数据库表和初始化数据。
- onUpgrade():当数据库需要升级时调用,一般用于修改数据表结构或删除旧数据。
下面是一个简单的 SQLiteOpenHelper 实现:
```
public class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydb.db"; // 数据库名称
private static final int DATABASE_VERSION = 1; // 数据库版本号
private static final String TABLE_NAME = "person"; // 表名
private static final String COL_ID = "id"; // 编号列
private static final String COL_NAME = "name"; // 姓名列
private static final String COL_SEX = "sex"; // 性别列
private static final String COL_AGE = "age"; // 年龄列
private static final String COL_HEIGHT = "height"; // 身高列
// 创建表的 SQL 语句
private static final String CREATE_TABLE_SQL = "CREATE TABLE " + TABLE_NAME + " (" +
COL_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
COL_NAME + " TEXT," +
COL_SEX + " TEXT," +
COL_AGE + " INTEGER," +
COL_HEIGHT + " REAL" +
")";
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(CREATE_TABLE_SQL);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// 升级数据库
}
}
```
2. 实现对数据库的增删查改
接下来,我们可以在 MainActivity 中创建 DBHelper 对象,然后调用 SQLiteDatabase 的 insert()、delete()、query()、update() 方法实现对数据库的增删查改操作。
```
public class MainActivity extends AppCompatActivity {
private DBHelper dbHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dbHelper = new DBHelper(this);
// 插入数据
insert();
// 查询数据
query();
// 更新数据
update();
// 删除数据
delete();
}
private void insert() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", "张三");
values.put("sex", "男");
values.put("age", 20);
values.put("height", 1.8);
db.insert("person", null, values);
db.close();
}
private void query() {
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cursor = db.query("person", null, null, null, null, null, null);
if (cursor.moveToFirst()) {
do {
int id = cursor.getInt(cursor.getColumnIndex("id"));
String name = cursor.getString(cursor.getColumnIndex("name"));
String sex = cursor.getString(cursor.getColumnIndex("sex"));
int age = cursor.getInt(cursor.getColumnIndex("age"));
double height = cursor.getDouble(cursor.getColumnIndex("height"));
Log.d("MainActivity", "id: " + id + ", name: " + name + ", sex: " + sex + ", age: " + age + ", height: " + height);
} while (cursor.moveToNext());
}
cursor.close();
db.close();
}
private void update() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("age", 21);
db.update("person", values, "name = ?", new String[]{"张三"});
db.close();
}
private void delete() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
db.delete("person", "name = ?", new String[]{"张三"});
db.close();
}
}
```
这样,我们就可以实现对 SQLite 数据库的增删查改操作了。
阅读全文