问题标签 [class-dbi]
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.
perl - 如何从 CDBI::Search 函数访问特定的返回值?
我正在使用一个DB::CDBI
类来访问我们应用程序中的数据库。我们的项目是面向对象的 Perl。
在这样一种情况下,我应该检查表中是否存在一行。我在CDBI调用中使用内置搜索 API 。
$translation_exists_r_not
正在根据搜索中给出的输入获得预期值。如果行存在,则_data
使用行详细信息进行更新。
如果该行不存在,那么我会得到这样的返回值。
我想根据搜索结果translation
从这个 sub返回值。find_translation
我无法为此获得最佳状态。
我尝试将其复制_data
到一个数组中,但我不确定如何进一步进行。就像_data
一个空的arrayref和另一个条件一样,它在arrayref内会有一个hashref。
perl - Perl 类::dbi - 多个连接
我有一个过去几年开发的类库,它使用 Perl 的 Class::DBI 来包装关系数据库(Prestashop 的 DB 方案,没那么重要)
是否有人知道在单个 perl 脚本中创建此类的多个“实例”,指向不同的数据库?例如,现在我做类似的事情:
这一切都很好。
我想要做的本质上是别名MyClassLib
,以便能够使用它的另一个“实例”指向不同的数据库。Class::DBI
将其数据库连接存储为静态状态是一件很痛苦的事情。
伪代码中的类似内容
然后从代码访问MyClassLib
和MyClassLibAlias
. 我知道Class::DBI
是遗留的,DBIx::Class
如果不存在的话,使用的解决方案也将不胜感激Class::DBI
谢谢
perl - 使用 Class::DBI 对 Perl 进行排序
您有一张名为 Pets 的表格:
在服务器 mydbserver 上的 MySQL 数据库中,用户为“user”,密码为“password”。
请执行下列操作:
Class::DBI
1)使用上述凭据 ( DBI.pm )创建与此数据库的连接。
2) 为表 Pets ( Pet.pm ) 创建一个类
3) 创建一个程序,打印 Pets 表中所有人的姓名,以及他/她按姓名和年龄排序的宠物种类(如果有的话)。
这是我写的代码......
profiling - Class::DBI - 它会加载所有表吗?
我们有一个包含大量表的 MySQL 数据库。不幸的是,在 2018 年,我们仍然使用 Perl CGI。所以脚本的加载时间是必不可少的。
DBIx::Class
被我排除了,因为它加载了大约 1.6 秒(这么长,因为它为数据库的所有表加载 Perl 定义)显然太多了。
Class::DBI
加载速度有多快?我的主要问题:当我们使用 Perl 时是否会加载有关所有可用表的信息(就像DBIx::Class
那样),Class::DBI
或者它是否仅为我们实际使用的这些表加载 Perl 定义?
以下是DBIx::Class
加载 1.6 秒的代码:
(架构是自动生成的。)
有没有办法让它更快?如何在不加载所有表的情况下使用它?