无法编辑 SQLite 数据库名称
Posted
技术标签:
【中文标题】无法编辑 SQLite 数据库名称【英文标题】:Can't edit SQLite database name 【发布时间】:2016-09-11 15:42:54 【问题描述】:我无法编辑我的数据库名称,也找不到我放入数据库的信息列表。
如果我尝试将数据库名称从“diet”更改为其他名称,我仍然可以运行,但会出现绿色下划线错字。我正在学习本教程。
public class DietDbHelper extends SQLiteOpenHelper
public static final String TABLE_NAME = "entry";
public static final String COLUMN_NAME_ID = "_id";
public static final String COLUMN_NAME_TIMESTAMP = "timestamp";
public static final String COLUMN_NAME_WEIGHT = "weight";
private static final String SQL_CREATE_ENTRIES =
"CREATE TABLE " + TABLE_NAME + " (" +
COLUMN_NAME_ID + " INTEGER PRIMARY KEY," +
COLUMN_NAME_TIMESTAMP + " INTEGER," +
COLUMN_NAME_WEIGHT + " INTEGER )";
private static final String SQL_DELETE_ENTRIES = "DROP TABLE IF EXISTS " + TABLE_NAME;
// If you change the database schema, you must increment the database version.
public static final int DATABASE_VERSION = 2;
public static final String DATABASE_NAME = "diet";
public DietDbHelper(Context context)
super(context, DATABASE_NAME, null, DATABASE_VERSION);
public void onCreate(SQLiteDatabase db)
db.execSQL(SQL_CREATE_ENTRIES);
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
// This database is only a cache for online data, so its upgrade policy is
// to simply to discard the data and start over
db.execSQL(SQL_DELETE_ENTRIES);
onCreate(db);
public void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion)
onUpgrade(db, oldVersion, newVersion);
【问题讨论】:
您忘记了教程的链接。什么是“绿色下划线错字”? android rename SQLite Database的可能重复 【参考方案1】:我会将您的数据库名称代码从 public static final String DATABASE_NAME = "diet";
到 公共静态最终字符串 DATABASE_NAME = "diet.db"; 我所有的 sqlite 列名、表名和数据库名都以绿色突出显示。
【讨论】:
【参考方案2】:您必须为您在数据库结构中所做的每次更改更改数据库版本。例如更改:
public static final int DATABASE_VERSION = 2;
到
public static final int DATABASE_VERSION = 3;
每次更改都以此类推。 我希望它会有所帮助
【讨论】:
更改文件名会生成一个全新的文件。以上是关于无法编辑 SQLite 数据库名称的主要内容,如果未能解决你的问题,请参考以下文章
我无法在 cordova-sqlite-storage 中为 ionic 1 打开数据库
getContext() 无法在 SQLite dB 中解析