如何在安卓中向SQLite数据库插入数据?

5

我已经看到了在Android中使用SQLite的示例...但在那个特定的示例中,每次运行应用程序时都会插入记录...但我想只插入一次并永久保存!有什么可能性吗?


感谢大家的帮助 :-) 现在我对SQLite有了更好的理解 :-) - rampireram
4个回答

14
   //DB HANDLER CLASS
    public void saveRecords(String info, int otherinfo, int greatinfo){

    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(STRING_COLUMNA, info); // inserting a string
    values.put(STRING_COLUMNB, otherinfo); // inserting an int
    values.put(STRING_COLUMNC, greatinfo); // inserting an int

    // Inserting Row
    db.insert(TABLE_NAME, null, values);
    db.close(); // Closing database connection

}

祝你好运!


3
考虑将数据库操作包装在事务中 - 参见 Android 示例:使用事务更新数据库 - drorw

5

在你的SQLiteOpenHelper的onCreate方法中插入值。它只会在你的数据库被创建时调用。


这对于插入数据并获取数据库的初始数据非常有用,以便在首次安装应用程序时不会为空。 - PhoneixS

1

SQLite数据库是持久性的,一旦你在手机或平板电脑上安装了应用程序并创建了数据库,记录就应该一直保存在其中,直到你删除了这些记录或整个数据库。

你应该从你的Application类中调用SQLiteDatabaseHelper。所以每次打开应用程序时,它只是按照你给它的名称查找数据库。如果找不到数据库,它会创建它-如果你有一个想要插入一次且仅一次的记录,你应该在onCreate方法中创建这些记录。


0

如果没有代码或更多关于您想要做什么的详细信息,那么帮助可能会有些困难。不过,您可以将SQL插入函数与OnClickListener或其他操作侦听器绑定,以便只在需要时添加条目,而不是每次创建活动时都添加。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接