Articles of android sqlite

如何在没有root的Android设备上检查数据库

我正在开发一个应用程序,我使用sqllite3数据库来存储值。 我有Nexus S和Nexus 7都是无根设备。 如何为我的应用程序获取数据库以进行调试。 我试过(1)我尝试过这里提到的所有方法 adb shell run-as app.package.name \ cp /data/data/package.name/databases/application.sqlite /sdcard/ exit adb pull /sdcard/application.sqlite ~/ 这说cp没find.. (2) http://developer.android.com/tools/help/adb.html#sqlite adb -s emulator-5554 shell # sqlite3 /data/data/com.example.google.rss.rssexample/databases/rssitems.db SQLite version 3.3.12 Enter “.help” for instructions …. enter commands, then quit… sqlite> .exit

CursorLoader和AsyncTaskLoader之间的区别

我为什么要使用AsyncTaskLoader ,什么时候应该更喜欢CursorLoader ,反之亦然? 在官方页面中 ,显示了App-listing示例,它使用AsyncTaskLoader而不是CursorLoader。 这两者有哪些优缺点? 我在某处读到了CursorLoader没有关注内容更改(在sqlite中)。 谢谢!

Android:批量插入,不推荐使用InsertHelper时

有很多答案和教程使用InsertHelper在SQLiteDatabase中进行快速批量插入。 但是从API 17开始,不推荐使用InsertHelper 。 什么是在Android SQLite中批量插入大量数据的最快方法? 到目前为止,我最担心的是SQLiteStatement使用起来不太舒服,其中InsertHelper具有绑定列和绑定值,这有点微不足道。

Android SQLite查询 – 获取最新的10条记录

我有一个保存在我的Android应用程序中的数据库,想要检索插入数据库的最后10条消息。 我用的时候: Select * from tblmessage DESC limit 10; 它给了我10条消息但是来自TOP 。 但我想要最后 10条消息。 可能吗? 假设整个表数据是 – 1,2,3,4,5….30 我select * from tblmessage where timestamp desc limit 10写了查询select * from tblmessage where timestamp desc limit 10 它显示30,29,28…21 但我希望序列为 – 21,22,23…30

应该为数据库中的每个表都有一个SQLiteOpenHelper吗?

有一个大的SQLiteOpenHelper子类为数据库中的每个表定义onCreate和onUpgrade方法是否更好,或者最好有多个SQLiteOpenHelper子类,每个表一个? 有最好的做法吗? 或者都是可以接受的,但有不同的好的和坏的副作用?

为我的应用指定max sqlite db size。 如何处理db完全exception

我在接受采访时被问到如何为我们的Android应用程序设置sqlite db的最大大小。 我们如何处理最大尺寸? 编辑 :Marina Lynn的回答似乎可以接受这个问题。 但是当db大小达到我们指定的极限附近时,是否会触发某种侦听器? (或类似的东西)

Android SQLite数据库和应用更新

我开发了一个Android应用程序并发布了1.0版本。 该应用程序包含带有5个表的SQLite本地数据库。 现在我们计划发布2.0版本,同时更新版本1.0用户。 在2.0版本中,我们在前5个表中包含了额外的两个表,现在有7个表。 现在我的问题是,版本1.0用户都在本地数据库中有一些数据,如果他更新到版本2.0,以前的数据会丢失吗? 如果是这样的话。 那么替代方法是什么?

如何在sdcard上直接存储sqlite数据库

我想在sdcard而不是默认路径创建我的sqlite数据库…我想从SD卡访问我的所有数据也使用此代码: private static class OpenHelper extends SQLiteOpenHelper { OpenHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); SQLiteDatabase.openOrCreateDatabase(“/sdcard/”+DATABASE_NAME,null); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL(“CREATE TABLE ” + TABLE_NAME + ” (id INTEGER PRIMARY KEY, name TEXT, number TEXT, skypeId TEXT, address TEXT, image BLOB)”); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { […]

如何将Room Persistence Library导入Android项目

我最近看到Google I / O Room Persistence Library上宣布的新function与Android上的Sqlite数据库一起使用。 我一直在寻找官方文档 ,我没有find我应该导入到我的Android项目上的gradle文件的依赖项。 有人可以帮个忙吗?

java.lang.IllegalArgumentException:列’_id’不存在

我正在尝试在真实设备上调试我的应用程序,但是我收到此错误: ERROR / AndroidRuntime(981):引起:java.lang.IllegalArgumentException:列’_id’不存在 当我在模拟器上进行测试时,不会出现错误。 错误在以下代码的最后一行中给出: adapter = new SimpleCursorAdapter(this, R.layout.list_item, c, new String[] { DataHandlerDB.CONTACT_NAME_COL, DataHandlerDB.CONTACT_NUMBER_COL, DataHandlerDB.CONTACT_DURATION_COL, DataHandlerDB.CONTACT_DATE_COL }, new int[] { R.id.contact_name, R.id.phone_number, R.id.duration, R.id.date }); 这是我的活动: public class MyActivity extends Activity { private static final String LOG_TAG = “MyActivity”; private ListView listview; private SimpleCursorAdapter adapter; private DataHandlerDB handler; private SQLiteDatabase db; private […]