dbix-class相关内容

如何在附加的 sqlite 数据库中创建外键?

我正在尝试创建一个 sqlite3 数据库作为模拟生产环境的测试环境.由于生产设置的方式,表处于多个模式中. 我已经在 DBIx::Class 中设置了类,使用 $schema->storage->dbh_do 将数据库与模式连接起来,并使用 $schema-deploy() 来创建数据库. 但是,在第二个表上创建外键时,我收到以下错误: DBIx::Class::Schema::d ..
发布时间:2021-08-23 19:36:01 数据库

在 DBIx-Class 中使用预取时如何仅选择特定列?

我正在为相当基本的 DBIx 类预取用法而苦苦挣扎.我想限制使用预取时从联接表返回的列. 这个: my $rs = $schema->resultset('CD')->search({}, # 通过 WHERE 子句没有搜索限制{预取=>[qw/艺术家/],列 =>[qw/标题艺术家.name/],}); 生成此 SQL: SELECT cd.title, Artist.*从光盘加入艺 ..
发布时间:2021-06-15 20:53:53 其他开发

Perl DBIx::Class 能否覆盖从数据库中检索列的方式?

直到今天我才使用 DBIx::Class,所以我对它完全陌生. 我不确定这是否可行,但基本上我的 SQLite 数据库中有一个表,其中有一个时间戳列.时间戳列的默认值为“CURRENT_TIMESTAMP".SQLite 将其存储在 GMT 时区,但我的服务器位于 CDT 时区. 我用来获取正确时区时间戳的 SQLite 查询是这样的: select datetime(timesta ..
发布时间:2021-06-15 20:50:26 数据库

DBIx:具有附加属性的类多对多关系

我正在 Catalyst 框架中使用 DBIx::Class.我的本地目标是在用户和任务之间添加新的多对多关系.但是我需要一个小技巧.用户可以在任务中拥有不同的角色(例如“工人"或“旁观者"). 所以我有带有这些字段的用户表: id 姓名 我有包含这些字段的任务表: id 标题 说明 而且我有包含以下字段的关系表 user_tasks: user_id ..
发布时间:2021-06-15 20:42:37 其他开发

将 DBIx::Class::Result 转换为哈希

使用 DBIx::Class,我找到了解决问题的方法,谢天谢地.但我相信一定有更好的方法. my $record = $schema->resultset("food")->create({name=>"bacon"}); 我如何将这个记录转换为一个简单的 hashref 而不必在之后立即进行调用. my record = $schema->resultset("food")->search ..
发布时间:2021-06-15 20:26:40 其他开发

DBIx :: Class中的子查询

我在此上花费了太多时间,但仍然无法使语法正常工作。 在DBIx :: Class中可以使用此选择语句吗? “ SELECT A.id,A.name,count(C.a_id)AS count1, (选择计数(B.id来自A,B,其中A.id = B.a_id GROUP BY B.a_id,A.id)AS count2 来自A.id = C.a_id C的左外连接C。 a_id,A.id ..
发布时间:2020-10-19 02:48:50 其他开发

格式化时间戳字段以在TemplateToolkit中输出

我将Perl与Catalyst框架配合使用,DBIx类用作ORM,TT用于视图,Postgresql作为数据库。 我有一列具有“没有时区的时间戳记”类型的列,如果我在Postgres中手动查询,则列值的格式为 2012- 08-30 21:30:14 ,但是当我在TT视图文件中打印值时,我会像这样 2012-08-30T15:03:13 ,因此很显然它已格式化,但按我无法告诉的内容。 ..
发布时间:2020-05-29 23:06:34 其他开发

如何在mod_perl中建立DBIC持久数据库连接?

我正在为我的Web应用程序使用mod_perl.目前,我计划在整个网络上使用mysql数据库.在每个对display_customer_transaction.cgi的CGI请求中,我的脚本都会 打开网络上的数据库连接 使用SQL语句对数据库执行查询 分析从数据库检索的数据 以HTML格式打印数据 关闭数据库连接 经过一些分析后,我意识到步骤(1)是瓶颈.因此,我希望避免为每个 ..
发布时间:2020-05-26 19:39:47 其他开发

我可以漂亮的打印DBIx :: Class中的DBIC_TRACE输出吗?

设置DBIC_TRACE环境变量为true: $ $ p $ {$ ENV {DBIC_TRACE} = 1} 会生成非常有用的输出,尤其是显示正在执行的SQL查询,但SQL查询全部在同一行上。 / p> 是否有办法通过某种“sql tidy”例程来更好地对其进行格式化,也许将其分解为多行?如果没有,任何人都可以给我一个微弱的代码,我需要破解添加这样一个钩子?什么最好的工具是接 ..
发布时间:2018-02-04 11:26:38 其他开发

如何避免使用DBIx :: Class :: ResultSet的find_or_create方法时的竞争条件?

从 find_or_create : 注意:因为find_or_create然后 可能基于结果插入,这种方法受到比赛 条件的限制。另一个进程可以在 之后的表中创建一个记录,find已经完成并且在创建开始之前。要避免 这个问题,请在事务中使用find_or_create()。 解决方案 不,文档不正确。单独使用事务不可以避免此问题。它只保证在发生异常时回滚整个事务,以便不会有不 ..
发布时间:2017-03-17 20:58:34 其他数据库