问题标签 [ormlite]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - ListActivity ormlite问题?
当我决定使用 ORMLite 时,我编写了相当多的代码。
阅读文档后,我发现我需要扩展如下:
但我已经用 ListActivity 扩展了它。
是否可以在不扩展 OrmLiteBaseActivity 的情况下做到这一点?
提前Tnx。
android - Android OrmLite 预填充数据库
OrmLite 是否可以创建一个 sql 脚本文件来轻松地用数据填充数据库?我做了一些搜索,但找不到任何简单的东西。我知道我可以用数据创建一些对象,我只是在寻找一种更清洁的方法。
我正在考虑创建一个脚本文件,在加载时打开一个阅读器,并将每个文件作为原始 SQL 处理为 executeRaw() 方法。有什么想法吗?
java - 我可以在 ORMLite 中暂时暂停自动生成的 ID 吗?
我在我目前正在编写的一个小应用程序中使用带有 ORMLite 的 Android。该应用程序旨在拥有一个有效的导入/导出功能,为此我使用简单的 XML 框架。在某种程度上,一切都很好。
情况如下:对象A包含一个引用对象B的外键,它通过外键本身引用对象C。导出数据库很棒。导入工作,有一个小警告,即只要所有对象的 ID 是连续的并且从 1 开始,它就可以工作。但是如果数据库是碎片化的,即我在这里和那里删除了一条记录,在我导出数据库之后,我在生成的 XML 结构中有“漏洞”。示例对象可能是:
假设我有一个包含 2 个客户(id 1 和 2)的数据库,它们分别保存从 1 到 5 和 6 到 8 的订单。导出这个然后在干净的数据库中重新导入效果很好。但是,如果我删除客户 1 及其订单并将其导出,则出口商将按原样写出他们的 id,即
和
等当我将数据导入一个新的数据库时,我会首先通过以下方式保存客户对象
然后他们的每个订单通过
问题是 create 函数忽略了提供的 id(不是 0),并且新生成的 customer id 是 1(在一个新的空数据库中)。订单也一样。但是由于他们引用了 id=2 的客户,所以他们之间的链接被破坏了。
所以在这个有点冗长的解释之后,这是我的问题:有没有办法告诉 ORMLite 为 generateId 字段获取提供的值并使用它运行,而不是覆盖它?如果创建函数在表中找到具有相同 ID 的行已经生成任何异常,我会没问题,但会继续保存记录,否则......我已经想到了一个解决方法:所有对象应该可以使用 Comparator 接口按 ID 排序;使用要导入的对象对 ArrayList 进行排序;对于每个对象 - 将假定 id 读入 int, - 使用 dao.create 保存到数据库, - 如果对象的新 id 与假定 id 不同,则通过 dao.updateId 更改它, - 移动到列表中的下一个对象.. . 但这似乎太麻烦且容易出错:如果create方法试图生成一个id怎么办,
我不相信我的情况如此罕见,以前没有人遇到过这种情况。我会很感激一个解决方案!
最好的问候,托多
java - 基本的 ORMLite 数据库问题
关于ORMLIte 网站上列出的示例,我有两个问题。
- 我在哪里放置数据库以及如何导入它?
- 我将DAO和连接工厂放在哪个类?
sql - 如何在 ormlite ( SQLite ) 中执行多列唯一约束
我正在为 Android 使用 ormlite,我正在尝试获取多列唯一约束。截至目前,我只能对这样的个别列进行唯一约束:
我想要的是
在我的模型中,我一直在为唯一列使用以下注释:
有没有办法让它工作?
java - 使用 ORMLite 准备查询的 SQL 异常
我正在使用 ORM (ORMlite) 并且我的所有调用都运行良好,直到出现以下错误。
线程“main”org.h2.jdbc.JdbcSQLException 中的异常:SQL 语句中的语法错误“SELECT * FROM”“STORIES”“WHERE”“TITLE”“='Deepcut case 导致'NOT FOLLOWED[*]''”;SQL 语句:SELECT * FROM
Stories
WHEREtitle
= '深度案例导致'未遵循'' [42000-152] at org.h2.message.DbException.getJdbcSQLException(DbException.java:327) at org.h2.message.DbException.get(DbException.java:167) at org.h2.message.DbException.get(DbException.java:144) 在 org.h2.message.DbException.getSyntaxError(DbException.java:179) 在 org.h2.command.Parser.getSyntaxError(Parser.java:480)在 org.h2.command.Parser.prepareCommand(Parser.java:229) 在 org.h2.engine.Session.prepareLocal(Session.java:426) 在 org.h2.engine.Session.prepareCommand(Session.java:374 ) 在 org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1093) 在 org.h2.jdbc.JdbcPreparedStatement.(JdbcPreparedStatement.java:71) 在 org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:601) 在 com.j256.ormlite.stmt.mapped.MappedPreparedStmt.compile(MappedPreparedStmt.java:44) 在 com.j256.ormlite.jdbc.JdbcDatabaseConnection.compileStatement(JdbcDatabaseConnection.java:83) 在 com.j256.ormlite .stmt.StatementExecutor.buildIterator(StatementExecutor.java:169) 在 com.j256.ormlite.stmt.StatementExecutor.query(StatementExecutor.java:119) 在 com.j256.ormlite.dao.BaseDaoImpl.query(BaseDaoImpl.java:189 )119) 在 com.j256.ormlite.dao.BaseDaoImpl.query(BaseDaoImpl.java:189)119) 在 com.j256.ormlite.dao.BaseDaoImpl.query(BaseDaoImpl.java:189)
我对出了什么问题感到困惑。我从以下几行调用搜索:
android - 是否可以在带有 h2 或 sybase 数据库的 android 上使用 ormlite?
我已经使用 sqlite、h2 和 sybase 数据库在 android 上实现了一个 database-testapp。对于 sqlite,我还实现了 ormlite 接口。现在我很感兴趣是否可以在 android 上使用 ormlite 也可以使用 h2 或 sybase。
java - 为什么 ORMLite 中的 DAO 方法这么慢?
我有一个看起来像这样的方法
当我打电话时getDaoStore
,这是一个相当漫长的过程。在我的日志中,我可以看到 GC 在每次调用它之后都会运行,所以我猜这个调用会发生很多事情。
有没有办法加快这个速度?
android - Android上可以使用ormlite动态生成DAO层吗?
我正在尝试解决这个问题。我想知道是否可以使用 ORMLite(或修改它)来支持这个用例?
谢谢。
android - ORMLite 中的集合
您好,我想在我的 android 应用程序中使用 ORMlite 保留一些集合数据。例如 :
我应该如何做才能持久保存这个集合。
编辑
正如你告诉我的,我使用 ForeignCollectionField。但现在我有另一个问题 - 有可能这样的构造(我改变了一点班级)
我建造了这个结构,我把它放在 3 个 tabelas 里。
然后我这样做并出现错误:
有什么建议么 ?
编辑2
问题是从数据库中读取数据。这个程序工作正常,现在很好,但我只是用它来理解 ORMlite。非常感谢格雷的帮助。