本来很简单的事情 后出现了小问题 浪费了不少时间确实不该
package com.ndialog.db;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DBOpenHelper extends SQLiteOpenHelper {
private static final String DATABASENAME = "popnote.db"; // 数据库名称
private static final int DATABASEVERSION = 1;// 数据库版本 如果更改了安装的时候会执行 onupgrade方法
public DBOpenHelper(Context context) {
super(context, DATABASENAME, null, DATABASEVERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS note (noteid integer primary key autoincrement, text varchar(500), time varchar(16), mark integer, author integer)");// 执行有更改的sql语句
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("ALTER TABLE note ADD COLUMN marktes integer");//增减一项 保存用户数据
// 但是注意在Activity中调用的时候需要使用SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
// ALTER TABLE Teachers ADD COLUMN Sex text;
//db.execSQL("DROP TABLE IF EXISTS note");
onCreate(db);
}
}
分享到:
相关推荐
下面将详细讲解如何在Android中进行数据库表结构的更新,以及如何处理旧版本程序中表的接口添加、删减字段的问题。 1. **创建SQLite数据库** - Android使用SQLite作为默认的本地数据库系统。首先,我们需要创建一...
2. `onUpgrade()`方法:当数据库版本升级时调用,用于更新表结构或执行其他必要的升级操作。 二、数据库版本管理 每个SQLite数据库都有一个版本号,可以在SQLiteOpenHelper的构造函数中设置。每次升级时,都需要...
在这个特定的场景中,我们探讨的知识点主要集中在如何使用Realm进行数据库的升级,以及如何查看数据库表结构和字段。 1. **Realm数据库的增删改查操作**: - 增加:通过创建 RealmObject 的子类来定义数据模型,...
在Android应用开发中,随着应用的迭代更新,数据库版本也需要随之升级以添加新的表或修改已有结构。然而,数据库升级过程中如何确保用户数据不丢失是一个关键问题。Ormlite是一款轻量级的Java ORM(对象关系映射)库...
综上所述,Android数据库升级是一个涉及版本管理、表结构修改和数据迁移的过程。通过合理地重写onUpgrade方法,我们可以确保应用程序在更新时能够顺利地适应新的数据库结构。同时,遵循最佳实践,可以提高升级的稳定...
当数据库结构发生变化时,如新增字段或修改表结构,GreenDao提供了数据库升级的机制。在`DaoMaster`中定义`onUpgrade()`方法,处理版本升级逻辑。 总结,GreenDao以其高效、易用的特性,成为了Android开发中处理...
`onUpgrade()`则在数据库版本升级时调用,可以用来修改表结构或进行其他升级操作。 2. **创建表** 在`onCreate()`方法中,我们需要编写SQL语句来创建表。例如,创建一个名为`Users`的表,包含`id`(整型,主键)、...
`onUpgrade()`方法在数据库版本升级时调用,通常用于修改表结构或删除旧表。例如,当你需要增加新的列时: ```java @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db....
在Android中,我们通常会创建一个SQLiteOpenHelper的子类,如`DatabaseHelper`,它负责初始化数据库和升级数据库版本。在`onCreate()`方法中,我们会编写创建表的SQL语句,而在`onUpgrade()`方法中,处理数据库版本...
3. 在`onUpgrade()`中处理版本升级,如增加、删除或修改表结构。 4. 在应用中,通过`getWritableDatabase()`或`getReadableDatabase()`获取数据库实例。 5. 使用`SQLiteDatabase`对象执行CRUD操作,如`execSQL()`...
数据库表结构变更:在实际的项目开发中,如果数据库表结构需要更新,比如添加新的字段或删除旧的字段,开发者应该编写相应的ALTER TABLE语句来修改表结构,并在onUpgrade()方法中调用这些语句,确保数据库版本升级时...
2. **逐个升级到新版本**:从旧版本到新版本,每次提升一个版本,执行相应的SQL脚本或者使用GreenDAO的API来修改数据表结构。例如,如果新增了一个字段,可以使用`ALTER TABLE`语句添加;如果删除了一个字段,可能...
2. **数据库版本管理**: 数据库的版本管理通过SQLiteOpenHelper的构造函数传入,当数据库版本号改变时,`onUpgrade()`会被调用,允许开发者执行升级操作,如添加新表或修改现有表结构。 3. **SQL语句的执行**: 使用...
`onUpgrade()`则在数据库版本升级时执行,可以用来修改表结构或删除旧表。 在实例中,我们通常会创建一个自定义的SQLiteOpenHelper子类,例如`MyDatabaseHelper`。在`MyDatabaseHelper`中,你可以这样定义`onCreate...
当我们需要修改数据库结构,如新增字段,就需要提升数据库版本号,并在onUpgrade()方法中执行相应的升级逻辑。 1. **创建SQLiteOpenHelper子类**:首先,你需要创建一个继承自SQLiteOpenHelper的子类,比如`...
随着应用的迭代和功能的增加,可能需要对数据库进行升级,比如添加新的表格、修改现有表格结构或者增加字段。本文将深入探讨如何在Android中进行SQLite数据库的升级学习。 首先,我们需要理解Android的...
XML配置文件通常包含数据库的版本信息、表结构以及字段定义。例如,你可以定义一个名为`Users`的表,包含`id`、`name`和`email`三个字段,如下所示: ```xml ``` 在这个框架中,XML配置文件会被...
// 升级数据库时的操作,如修改表结构 db.execSQL("DROP TABLE IF EXISTS TestTable"); onCreate(db); } } ``` **2. 插入数据** 要向数据库中插入数据,我们可以调用`SQLiteOpenHelper`子类的`...
`onCreate()`用于首次安装应用时创建数据库,`onUpgrade()`则在数据库版本升级时被调用,可以用来更新表结构或数据。 2. 数据表的创建: 在`onCreate()`方法中,我们会编写SQL语句来创建数据表。例如: ```java ...
而在onUpgrade()中,我们可以处理数据库版本升级,如添加新表、删除表或修改表结构。 2. **打开/关闭数据库**: 使用SQLiteOpenHelper的getWritableDatabase()或getReadableDatabase()方法来打开数据库。完成后,...