草庐IT

database_query

全部标签

database - Android 预填充数据库

这个问题在这里已经有了答案:Shipanapplicationwithadatabase(15个回答)关闭8年前。我正在开发一个Android应用程序,该应用程序需要在该应用程序的数据库中填充多个条目(一个表,包含1000-10000行),然后用户才能使用该应用程序。我查看了一些教程,但不确定最好的方法。我是否应该在每次启动应用程序时检查数据库是否存在,如果不存在,创建它并插入我需要的数千条记录?或者有没有更好的方法来处理这个问题?理想情况下,它可以作为应用程序安装过程的一部分包含在内,但我不确定这是否可行。任何反馈将不胜感激。 最佳答案

android - 如何从 Realm Database Android 中删除对象?

我想从Realm中删除所有等于用户ID的消息对象RealmQueryrowQuery=realm.where(Message.class).equalTo(Message.USER_ID,userId);realm.beginTransaction();//TODO:hereIwanttoremoveallmessageswhereuserIdisequalto"9789273498708475"realm.commitTransaction(); 最佳答案 在0.88.3及以下你可以这样做:realm.executeTransac

database - Android:数据库文件存储在哪里?

我在Android设备上创建了一个SQLite数据库。该程序可以读取/写入数据库,因此显然已经创建了数据库文件。SQLiteDatabase.mPath设置为db.mPath="/data/data/dev.client.android/databases/clientDB.db"但是当我浏览设备上的目录时,我找不到文件clientDB.db。我查看了数据目录,但它似乎是空的。有人知道这里出了什么问题吗? 最佳答案 在ContextWrapper(http://developer.android.com/reference/andr

android - managedQuery() vs context.getContentResolver.query() vs android.provider.something.query()

很简单。这三者有什么区别?我想列出设备中的每个图像。我应该使用managedQuery()、android.provider.MediaStore.Images.Media.query()还是context.getContentResolver.query() 最佳答案 managedQuery()将使用ContentResolver的query()。不同的是使用managedQuery()Activity将保留对您的引用光标并在需要时关闭它(例如在onDestroy()中。)如果您自己执行query(),您将必须将Cursor作为

android.database.CursorIndexOutOfBoundsException : Index 0 requested, 大小为 0

我正在使用自定义适配器扩展光标适配器来在ListView中显示数据,以显示特定的电话号码,我已将id传递给数据库类中的一个方法,但它正在显示errorandroid.database.CursorIndexOutOfBoundsException:Index0requested,withasizeof0在将调试器放在方法中时,它不会在行之后num=cursor.getString(cursor.getColumnIndex("ContactNumber"));谁能帮我解决。这是代码:publicStringgetNumberFromId(intid){Stringnum;db=this

android - 在 SQLiteDatabase.query() 中使用 String[] selectionArgs

如何在SQLiteDatabase.query()中使用String[]selectionArgs?我希望我可以将它设置为null,因为我没有用它。我只是想将整个未排序的表从数据库加载到Cursor中。关于如何实现这一点的任何建议? 最佳答案 selectionArgs替换选择字符串中的任何问号。例如:String[]args={"firststring","second@string.com"};Cursorcursor=db.query("TABLE_NAME",null,"name=?ANDemail=?",args,null

android - 遍历来自 Sqlite-query 的行

我有一个表格布局,我想用数据库查询的结果进行填充。我使用全选,查询返回四行数据。我使用此代码在表格行中填充TextView。Cursorc=null;c=dh.getAlternative2();startManagingCursor(c);//thedesiredcolumnstobeboundString[]columns=newString[]{DataHelper.KEY_ALT};//theXMLdefinedviewswhichthedatawillbeboundtoint[]to=newint[]{R.id.name_entry};SimpleCursorAdapterm

android - 是什么导致 Android 的 ContentResolver.query() 返回 null?

ContentResolver.query在什么条件下()返回null而不是游标对象?我之前得到了空游标,但刚刚意识到该方法也可以返回null。不过,我无法追踪发生这种情况的情况。 最佳答案 由于我今天收到我的应用程序的用户崩溃报告,我刚刚偶然发现了同样的问题。如果Android文档对某些内容不清楚,则查看源代码会有所帮助。这就是我发现ContentResolver.query()返回null的原因:无法获取内容提供者。这可能是由于指定的Uri有问题,或者因为它根本不存在于系统中。如果Uri是问题,原因是:协议(protocol)不

android.database.CursorWindowAllocationException : Cursor window allocation of 2048 kb failed even after closing cursor

关于CursorWindowAllocatoinException的SO有很多问题:SQLiteAndroidDatabaseCursorwindowallocationof2048kbfailedCouldnotallocateCursorWindowOutofMemorywhenallocatingcursorsAndroidSQLiteCursorWindowAllocationExceptioncrash他们都建议游标在使用后必须关闭。但这并没有解决我的问题。这是我的代码:Stringquery="selectserialfromtbl1unionselectserialfro

database - Redis:数据库大小与内存的比率?

Redis的数据库大小与内存的比例是多少?例如,如果我有一个80MB的数据库,Redis将使用多少RAM(与普通Web应用程序一起使用时)? 最佳答案 Redis将使用比磁盘更多的RAM。转储文件格式可能更密集一些。这是来自真实生产系统的一些数字(在Ubuntu10.04上运行Redis2.0.4的64位EC2大型实例):$redis-cliinfo|grepused_memory_humanused_memory_human:1.36G$du-sh/mnt/data/redis/dump.rdb950M/mnt/data/redi