问题标签 [rose-db-object]

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 回答
664 浏览

perl - 我可以从 Rose::DB::Object 元数据创建一个表(如果不存在)吗?

我在CPAN 文档中找不到它——有没有办法IF NOT EXISTS从手动输入的Rose::DB::Object元数据创建一个表()?

我使用 SQLite 作为引擎,如果它碰巧很重要。谢谢!

0 投票
1 回答
347 浏览

perl - 为什么 Rose::DB::Object sort_by RAND() 没有做我期望的事情?

我无法让它工作。我正在使用这个查询:

当我在 Rose::DB::Object::Manager 中打开调试时,我看到 order 子句是:

那是t1.id从哪里来的?知道如何纠正ORDER BYRAND()吗?

0 投票
2 回答
669 浏览

perl - 如何使用 RDBO 在模板工具包中强制列表上下文?

我有一个 TT 插件,它可以处理微不足道的唯一 ID:

模板调用很简单:

并且“数据”是一个 RDB 对象,用户是它的关系之一。我已经验证“.users”直接在 Perl 中返回一个列表,无论关系有一个还是多个元素。

但是,似乎 TT 返回单个元素列表的元素,而正确返回多个元素的列表。

我查了一下,发现你可以用“.list”强制列表上下文:

正如 Data::Dumper 所揭示的,这不适用于单元素列表:

而不是预期的

在 TT 中是否有任何其他简单的方法来获取对象列表,即使是在单元素列表上?(一种方法是重写函数,但最好不要重写)

0 投票
2 回答
1454 浏览

mysql - 使用 Rose::DB::Object 和 MySQL 设置 NULL 日期时间

我在这里可能是错的,但看起来这里有相互冲突的标准。

MySQL 将“0000-00-00 00:00:00”的存储日期时间视为等同于 NULL。(更新 - 似乎只有当日期时间被定义为 NOT NULL 时)

但是 Rose::DB::Object 对 MySQL DATETIME 字段使用 DateTime,并且尝试从“0000-00-00”设置空 DATETIME 会在 DateTime 模块中引发异常。即,我无法创建具有年 0、月 0、日 0 的 DateTime 对象,因为这会在 DateTime 模块中引发异常。

我签入了 Rose::DB::Object::Metadata::Column::Datetime,并且在创建条目或检索时看不到显式处理 NULL DateTime 的方法。

我错过了什么吗?

即,即使 DateTime(Perl 模块)不能,Rose::DB::Object 也可以处理 NULL 日期时间(MySQL)字段。

示例代码:

RoseDB::dt_test 模块为:

当我运行它时,我收到错误“Invalid datetime: '0000-00-00' at tmp.pl line 8”

当我将日期更改为“2010-01-01”时,它按预期工作:

我终于设法重新创建了 NULL MySQL 查询示例!

看起来像用“NOT NULL”定义日期时间然后尝试使用 MySQL“fake null”的表定义是问题所在。我现在玩这个太累了,但我会在早上更改表结构时看看会发生什么。

0 投票
1 回答
201 浏览

perl - Rose::DB::Object::Cached 内存是否通过不同的进程缓存?

RDBOC 对象是否通过不同的进程缓存?我想在 mod-perl 中运行它,它会影响一些事情,即使它主要用于不会改变(很多)的事情。

此外,引用 RDBOC 的关系是否应该直观地使用缓存?

0 投票
1 回答
280 浏览

perl - 使用 Rose::DB::Object,如果未找到,如何在关系中自动创建对象?

我有 2 个表是 1 到 [0/1]。有没有办法使用Rose::DB::Object自动创建关系对象/行:

例如:

也许是触发器?

0 投票
2 回答
930 浏览

perl - 使用 Rose::DB::Object 在 SQLite 中处理 UTF8 编码的文本

我正在使用Rose::DB::ObjectSQLite和中文文本。我的课程如下所示:

用于存储记录的代码:

用于显示数据的代码(来自 Mojolicious 应用程序):

如何消除解码步骤?我希望显示代码看起来像这样:

0 投票
2 回答
26490 浏览

perl - Perl 模块“没有返回真值”

我按照 CPAN 上的Rose::DB::Object 教程设置了三个包。

在应用程序中:

编译失败并出现此错误:

问候和感谢。

0 投票
1 回答
235 浏览

perl - Rose::DB::Object::Manager 和 HTML 模板

我正在使用Rose::DB::Object::Manager(获取/迭代方法)从数据库中获取数据并HTML::Template进行报告。

HTML 报告需要TMPL_LOOP在数据库中显示条目。

我的问题是如何使用 RDBOM 的 get/iterate 方法创建数组引用并将其传递给HTML::Template. 谢谢你。

0 投票
2 回答
557 浏览

perl - Rose::DB::Object::Manager 查询带有对象 ID 列表

我正在尝试使用 Array 或 Hash 编写 Rose::DB::Object 查询字符串,但是我不确定该怎么做。我正在尝试根据数组中枚举的列表中的某些 ID 编写更新函数。不幸的是,我没有任何其他唯一键来过滤以构建查询,所以我需要查询特定的 ID。

本质上,我正在尝试以编程方式编写以下内容:

这是我到目前为止的代码,但我无法成功实现我想要做的事情:

./test.pl

现在脚本只是无限期地挂起,没有输出。

我试图避免遍历 DB::Manager 并在每条记录的基础上进行 DB 调用,因为此脚本将每 60 秒通过 cron 运行一次,并且有可能返回大集合。