问题标签 [dbaccess]

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.

0 投票
1 回答
108 浏览

ios - 为什么查询(DBAccess)第一次在 Id 属性中返回 nil?

我有两节课。第一个是 AbstractEntity.swift:

另一个是继承了 AbstractEntity 的 User.swift。

在我的主数据库控制器中,我有这个方法:

问题是当我尝试通过 id 从数据库中获取对象时,我的 Id 值为零。它只在我启动我的应用程序时第一次发生。

在此处输入图像描述

我第二次得到正确的值: 在此处输入图像描述

为什么会这样?

0 投票
1 回答
87 浏览

ios - 如何使用 DBAccess iOS ORM 删除表

我们计划将 DBAccess 与我们的 iOS 应用程序一起使用。我们想不出在应用程序运行时删除表的方法。

我们的实际用例是确定数据库何时更新,然后删除或更改一些表。DBAccess 似乎也没有给 db 提供版本号。

0 投票
2 回答
832 浏览

cocoapods - 使用 Xcode 7 和 cocoapods 的 DBAccess 链接器警告和错误

几个月来,我已经成功地在我的项目中使用 DBAccess 作为 cocoapod。在过去的几周里,我的工具链发生了很多变化,现在我的构建失败了。pod install 表示它安装了 DBAccess (1.6.9)。Xcode 版本是 7.0.1。pod --version 为 0.39.0。

在 Xcode 中构建我的应用程序时,我看到了链接器警告:ld: warning: directory not found for option '-F/proj/DBAccess'

该框架实际上位于 /proj/Pods/DBAccess

这个警告不是问题(除了可能表明安装错误),我可以构建、运行和测试应用程序。

但是,当我尝试使用 jenkins/fastlane/pilot/xcode CLI 归档应用以提交到应用商店时,我收到以下链接器错误:

ld:无法生成位码包,因为“/Users/jenkins/.jenkins/jobs/proj/workspace/Pods/DBAccess/DBAccess.framework/DBAccess”是在没有完整位码的情况下构建的。必须从 Xcode Archive 或 Install build for architecture armv7 生成 bitcode 的所有目标文件和库

这是 Jenkins 为解决此错误而进行的命令行调用: set -o pipefail && xcodebuild -workspace './proj.xcworkspace' -scheme 'proj' -destination 'generic/platform=iOS' -archivePath '/Users/ jenkins/Library/Developer/Xcode/Archives/2015-10-12/proj 2015-10-12 16.33.37.xcarchive'存档| tee '/Users/jenkins/Library/Logs/gym/proj.log' | 漂亮的

这个错误让我很困惑,因为 DBAccess 网站声称 1.6.9 是为了解决这个问题而构建的 ( http://www.db-access.org/downloads )。是否还有其他人在使用 cocoapods 安装 DBAccess 时遇到问题?

0 投票
1 回答
95 浏览

ios - 如何使用“DBAccess”iOS ORM 执行 COUNT 和 SUM 操作

我正在使用带有 Xcode 7.0.1 的 DBAccess 框架 v1.6.12。

我想选择两个属性的 SUM 和 COUNT,很像下面的查询,除了 ORM 没有原始 SQL 接口:

有没有办法可以使用DBAccess.

0 投票
1 回答
75 浏览

ios - 如何使用“DBAccess”iOS ORM 执行事件触发操作

我正在使用带有 Xcode 7.1.1 的 DBAccess 框架 v1.6.12。

我想在插入、更新或删除如下行时使用事件触发器:

  1. 现有特定时期数据的“最长”参数变为“否”。
  2. 找到具有最长“文本”的行。
  3. 将其行的“最长”参数更改为“是”。

代码图片:

DBObject#entityWillInsert 只是返回 BOOL 值而不更改信息。

0 投票
1 回答
58 浏览

ios - 类似查询的 whereWithFormat 的 DBAccess 格式结构

我想确保我以正确的方式格式化子句,就像在查询中一样。例如,我有以下代码:

我的问题是:我是否为 like 子句使用了正确的格式?

谢谢你,编码愉快:)

0 投票
2 回答
45 浏览

ios - 使用 DBAccess 的许可证是什么

我在他们的网站上找不到许可证。
我们可以通过什么方式在我们的应用程序中使用该库?

0 投票
1 回答
27 浏览

ios - iOS DBAccess 索引属性

如果我索引一个属性并且在查询中我不使用 orderBy 子句,是否会使用索引?

示例代码:

prop1 和 prop2 是 NSString 类型。

谢谢!

0 投票
2 回答
161 浏览

ios - 如何将 DBAccess 框架集成到另一个框架 (iOS)

我编写了一个用objective-c编写的应用程序A,它使用了我的另一个框架B,它也是用objective-c编写的。框架B有一些与数据库相关的操作。为了执行这些操作,我尝试使用 DBAccess ORM ( http://www.db-access.org/ )。

  1. B中,我创建了一个模型类,其基类是 DBObject。

    @interface SettingsModel : DBObject

  2. 应用程序A的AppDelegate委托 DBDelegate 协议,在“ -(BOOL) application: didFinishLaunchingWithOptions: ”中设置委托“ [DBAccess setDelegate:self];
  3. B中有一个EnvironmentManager类,它在其init方法中设置数据库名称。 [DBAccess openDatabaseNamed:@"dbname"];
  4. EnvironmentManager 的对象是从A的 ViewController 的viewDidLoad方法创建的。
  5. 现在我尝试从A的 viewController 方法中保存和检索数据。

当我在打开保存和检索方法的情况下运行应用程序A时,检索方法会为我提供保存的数据。但是,如果我评论保存数据部分并运行 A,则无法检索到以前的数据。

  1. 是否可以从另一个框架使用 DBAccess 框架?
  2. 如果可能的话,请帮助我从上面的描述中找出问题所在。

编辑:

我尝试了其他一些选项,在@Adrian_H 回答评论部分进行了讨论。我在AB中都使用了相同的路径

0 投票
1 回答
96 浏览

ios - 如何通过'DBAccess'iOS ORM删除具有不同ID的多行

我正在使用带有 Xcode 7.2.1 的 DBAccess 框架 v1.6.12。

我想通过指定 ID 来删除多行。

代码图片:

也许,DBAccess 不支持"Id in (?,?,?)"格式查询?

请告诉我上面存档的解决方案。


[附加]

当我编写如下代码时,它按预期工作。

难道这,会是正当的措施吗?


[回复#1]

感谢您的评论。

我试过你的建议。但它无法解决。

我想删除 Id = 119 和 Id = 120,但它只删除了一行。


有效!

毕竟,我写了下面的代码。

感谢您的帮助!