Androidstudio中Sqlite数据库及表的创建与更新的实验总结与分析
时间: 2024-01-24 16:17:47 浏览: 185
在Android应用程序中,SQLite是一种常用的轻量级关系型数据库管理系统。SQLite数据库的创建和更新是开发Android应用程序时必须掌握的核心技能之一。下面是我对在Android Studio中创建和更新SQLite数据库和表的实验总结与分析。
## 创建SQLite数据库
在Android Studio中,创建SQLite数据库需要以下步骤:
1. 在app目录下的build.gradle文件中添加以下依赖项:
```
implementation 'androidx.sqlite:sqlite:2.1.0'
```
2. 在数据库帮助类中创建一个继承自SQLiteOpenHelper的类,该类负责创建和升级数据库。
```java
public class MyDatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "my_database.db";
private static final int DATABASE_VERSION = 1;
public MyDatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS user");
onCreate(db);
}
}
```
3. 在需要使用数据库的Activity或Fragment中创建MyDatabaseHelper对象,并使用getWritableDatabase方法获取可写数据库实例。
```java
MyDatabaseHelper dbHelper = new MyDatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
```
## 创建SQLite表
在SQLite数据库中创建表需要以下步骤:
1. 在数据库帮助类的onCreate方法中执行创建表的SQL语句。
```java
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)");
}
```
上述语句创建了一个名为user的表,包含三个字段:id、name和age。
2. 在需要使用表的Activity或Fragment中执行插入数据的SQL语句。
```java
db.execSQL("INSERT INTO user (name, age) VALUES ('张三', 20)");
```
## 更新SQLite数据库和表
在SQLite数据库和表中进行更新需要以下步骤:
1. 在数据库帮助类的onUpgrade方法中执行更新数据库或表的SQL语句。
```java
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS user");
onCreate(db);
}
```
上述语句删除了名为user的表,并重新创建了该表。
2. 在需要更新表的Activity或Fragment中执行更新数据的SQL语句。
```java
db.execSQL("UPDATE user SET name='李四' WHERE id=1");
```
以上是我对在Android Studio中创建和更新SQLite数据库和表的实验总结与分析。需要注意的是,在实际开发中,我们往往不会直接在Activity或Fragment中执行SQL语句,而是通过使用ORM框架(如Room)或其他数据访问层来访问数据库。
阅读全文