Android: 更新 SQLite 数据库
Android: Update SQLite database
我是 Android 的新手。我正在尝试更新 sqlite 数据库中的信息。大多数时候我能够更新信息,但有时我的 phone 会出现更新错误。我已经调试了很多次,它表明我的代码没有任何问题。我正在使用 Android 版本 5.1.1 Lollipop 作为测试工具。大多数时候,更新 sqlite 工作正常,但有时应用程序会崩溃。
以下是我的代码更新代码。请告诉我我的代码有什么问题。
public void updateArticle(String NewName, String oldName) {
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put(COLUMN_ARTICLENAME, NewName);
db.update(TABLE_ARTICLE, values, COLUMN_ARTICLENAME + " = '" + oldName + "'", null);
db.close();
}
谢谢。
可以有多个 Java 教程,因此当游标开始查找行时,它会更新不同的行,这不是您期望的行。想象一下,有一个列表视图,上面列出了您的行。获取带有 id 的项目并更新它是一个更好的编码实践。您可以查看以下链接,希望对您的问题有所帮助。
http://androidopentutorials.com/android-sqlite-example/
http://www.mysamplecode.com/2012/07/android-listview-cursoradapter-sqlite.html
你也必须更新数据库的版本!
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
try
{
db.execSQL(DROP_TABLE);
onCreate(db);
Message.message(context, "onUpgrade called");
} catch (SQLException e)
{
Message.message(context, "" + e); }
}
与 DATABASE_VERSION = 1
我是 Android 的新手。我正在尝试更新 sqlite 数据库中的信息。大多数时候我能够更新信息,但有时我的 phone 会出现更新错误。我已经调试了很多次,它表明我的代码没有任何问题。我正在使用 Android 版本 5.1.1 Lollipop 作为测试工具。大多数时候,更新 sqlite 工作正常,但有时应用程序会崩溃。
以下是我的代码更新代码。请告诉我我的代码有什么问题。
public void updateArticle(String NewName, String oldName) {
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put(COLUMN_ARTICLENAME, NewName);
db.update(TABLE_ARTICLE, values, COLUMN_ARTICLENAME + " = '" + oldName + "'", null);
db.close();
}
谢谢。
可以有多个 Java 教程,因此当游标开始查找行时,它会更新不同的行,这不是您期望的行。想象一下,有一个列表视图,上面列出了您的行。获取带有 id 的项目并更新它是一个更好的编码实践。您可以查看以下链接,希望对您的问题有所帮助。
http://androidopentutorials.com/android-sqlite-example/ http://www.mysamplecode.com/2012/07/android-listview-cursoradapter-sqlite.html
你也必须更新数据库的版本!
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
try
{
db.execSQL(DROP_TABLE);
onCreate(db);
Message.message(context, "onUpgrade called");
} catch (SQLException e)
{
Message.message(context, "" + e); }
}
与 DATABASE_VERSION = 1