Articles of ormlite

ORMLite重置所有表

我有一个使用ORMLite的应用程序。 我需要创建一个函数来重置整个数据库(基本上我需要从每个数据库中删除所有行,重置自动增量和重置索引)。 我可能可以通过在每个表上启动truncate来实现这一点,但ORMLite是否有一些特定的方法来执行此操作?

查看Android上由ORMLite生成的SQL

我正试图在我的Android应用程序中使用我的ORMLite查询调试一个奇怪的问题,如果我能看到正在生成的SQL,那将非常方便。 有没有办法将查询的SQL输出为字符串? 是否在执行查询之前或之后无关紧要。 例如,我有 contactQb.where().eq(“enabled”, true); 我想看看为QueryBuilder生成了什么SQL。

没有使用基本活动的Ormlite设置

我在android项目中使用ORMLite ,我不想使用扩展活动,因为我在AsyncTask上将值插入数据库。 在文档中它说: “如果你不想扩展OrmLiteBaseActivity和其他基类,那么你需要复制它们的function。你需要在代码的开头调用OpenHelperManager.getHelper(Context context, Class openHelperClass) ,保存帮助器并使用它可以随心所欲,然后在完成后调用OpenHelperManager.release() 。“ 它还说要在strings.xml添加数据库助手类,我有。 所以我不确定我做错了什么。 我正在为我的数据层使用一个名为DataAccess的类,如下所示: public class DataAccess { private Context context; private DBHelper dbHelper; public DataAccess(Context _context) { this.context = _context; dbHelper = getDBHelper(_context); } private DBHelper getDBHelper(Context context) { if (dbHelper == null) { dbHelper = (DBHelper) OpenHelperManager.getHelper(context, DBHelper.class); } return dbHelper; } } 我正在使用扩展的助手类: public […]

createOrUpdate()始终使用ORMLite在数据库中创建新条目

在我的Android项目中,ORMLite充当缓存。 我正在从Web服务器下载数据并将其放入数据库中。 我在我的对象上调用createOrUpdate ,但重复数据库出现在数据库中。 除了主键(它只是一个自动递增的整数)之外,数据库条目是相同的。 我认为,由于我的第二个对象还没有主键,因此ORMLite认为两者是不同的,即使每个其他字段都相同。 有没有人知道这是不是真的?

在Android中使用CursorAdapter进行ORMLite

我正在修改我的Android应用程序以使用ORMLite,它目前使用了许多CursorAdapter,我非常想保留它以尽量减少编码。 我不是100%肯定但是看起来当ORMLite在db中创建一个id字段时,它总是使用id ,而CursorAdapter需要_id 。 可以使用如下查询来解决此问题: select id as _id …… 但是Dao.queryRaw()方法返回一个列表,而不是Cursor,所以我这样做的方法是打开另一个SQLiteOpenHelper数据库连接并使用rawQuery() 。 这有效,但是有没有更好的方法呢? 拥有两个独立的数据库连接似乎有点过头了,以后可能会存在麻烦。

在SQLite下在ORMLite中创建外键约束

由于无法在SQLite中使用“ALTER TABLE”语句添加外键,因此我坚持如何配置数据库以强制执行有效的外键,或执行级联删除而不显式代码开销。 任何人都知道如何在SQLite下使用ORMLite实现这一目标?

使用Ormlite与Android的内容提供商合作

我正在开发一个Android应用程序,我对是否应该使用Ormlite与Android内容提供程序一起更新和检索数据感到矛盾。 内容提供程序将主要用于通知应用程序其他平台上应用程序中发生的数据更改。 也许我让它变得比它需要的更复杂。 一些更有经验的意见将不胜感激!

Android Studio ORMLite配置文件 – 找不到原始目录

以下问题的注释: Android Studio运行ORMLite配置生成的配置 我能够让我的配置运行这一个类,但它仍然失败了 Could not find raw directory 这是我的来源 package com.ilopez.android.machinesounds; import com.j256.ormlite.android.apptools.OrmLiteConfigUtil; import java.io.File; import java.io.IOException; import java.sql.SQLException; /** * Created by User on 7/25/13. */ public class DatabaseConfigUtil extends OrmLiteConfigUtil { private static final Class[] classes = new Class[]{ RecordedSound.class, }; public static void main(String[] args) throws IOException, SQLException { writeConfigFile(new File(“G:\\MachineSoundsProject\\MachineSounds\\src\\main\\res\\raw\\ormlite_config.txt”), […]

使用ormlite库以编程方式擦除sqlite数据库的数据

我正在寻找一种方法来擦除ormlite数据库的所有数据或删除数据库(然后重新创建它)与android上的ormlite。 这时,我只能更改DatabaseHelper的DATABASE_VERSION。 但我必须编译应用程序。 有人知道处理这种情况的方法吗?

我怎么知道我的应用程序是否与Robolectric一起运行?

我有一个使用ORMLite / SQLite的Android应用程序,我将Robolectric与JUnit 4结合使用,允许我在Android Studio和Jenkins构建服务器上运行unit testing。 通常我会在我的测试中,在设置中设置测试数据,然后针对它运行我的测试场景但是当我尝试这样做时,我开始遇到问题和exception,这似乎与被锁定的文件有关,而且似乎是是别人有过的问题…所以我到目前为止所做的是使用我的数据库助手中的create database方法创建一些测试期望存在的虚拟数据。 问题是我的应用程序现在需要插入一个真正的数据库,我不能让它在运行时设置虚拟数据。 如果在我的数据库帮助程序类中有一种方法可以检测代码是在设备上还是在Robolectric中执行?