问题标签 [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.

0 投票
3 回答
31508 浏览

perl - 如何获取使用 DBI 插入的最后一行?

如何获取使用DBI ( DBD::mysql ) 插入的最后一行?

代码示例:

如何访问上述prepare语句插入的数据?我需要获取主 ID ( AUTOINCREMENT) 值。

更新:

来自DBD::mysql文档:

访问此属性的另一种方法是通过 $dbh->{'mysql_insertid'}.

谢谢Mannin0rd的回答。:-)

0 投票
6 回答
1996 浏览

perl - SELECT DISTINCT 是否适用于 Perl 的 DBD::CSV?

我在网上找到了一个 SELECT 示例。当我在我的脚本中尝试它时,我收到了这个错误消息:

Specifying DISTINCT when using aggregate functions isn't reasonable - ignored. at /usr/lib/perl5/site_perl/5.10.0/SQL/Parser.pm line 496.

SELECT DISTINCT 是否不适用于 DBD::CSV 或者我的脚本有问题?

编辑:输出是

'Oberhemd' 'Mantel' 'Oberhemd' 'Hose' 4 rows

我认为应该是

'Oberhemd' 'Mantel' 'Hose' 3 rows

已安装版本:

Perl : 5.010000 (x86_64-linux-thread-multi) OS : linux (2.6.31) DBI : 1.609 DBD::Sponge : 12.010002 DBD::SQLite : 1.25 DBD::Proxy : 0.2004 DBD::Gofer : 0.011565 DBD::File : 0.37 DBD::ExampleP : 12.010007 DBD::DBM : 0.03 DBD::CSV : 0.26

0 投票
2 回答
9751 浏览

mysql - 我如何告诉 DBD::mysql mysql.sock 在哪里?

将 DBD::mysql 与 DBI 一起使用,尝试连接到数据库时出现以下错误。

是的,MySQL 已启动并正在运行。问题是 mysql.sock 不在 /tmp 中。
我知道 mysql.sock 的位置,并且我目前已经对其进行了黑客攻击,以便它可以工作,我创建了一个指向 mysql.sock 文件当前位置的软链接。我宁愿不更改 MySQL 配置,尽管这可能是最简单的事情。

有没有办法进入 DBD::mysql 并将其配置为在正确的位置查找 mysql.sock ?

0 投票
5 回答
5759 浏览

perl - DBI 和 DBD 有什么区别?

有人可以解释一下 DBI 和 DBD 到底是什么吗?什么时候应该使用其中一种,以及使用其中一种的好处。

0 投票
3 回答
1024 浏览

sql - SQL::Statement 的 REGEX 和 TRIM 是否与 DBD::CSV 一起使用?

这个脚本中的函数“REGEX()”和“TRIM()”不能像我预期的那样工作。REGEX 函数始终返回 true,TRIM 函数返回“trim_char”,而不是修剪后的字符串。(当我用 FROM 而不是 "," 编写 TRIM 函数时,我收到一条错误消息。)

有人给点建议吗?

编辑:

DBD::SQLite: 1.25
DBD::ExampleP: 12.010007
DBD::Sponge: 12.010002
DBD::CSV: 0.26
DBD::Gofer: 0.011565
DBD::DBM: 0.03
DBD::Proxy: 0.2004
DBI: 1.609
DBD::File: 0.37

SQL::语句:1.23

0 投票
3 回答
1427 浏览

perl - 如何测试 DBI 驱动程序状态是否在事务中?

我有几个方法应该只在我的DBI驱动程序类当前进入事务以确保数据完整性的情况下执行。我正在寻找这样的东西:

begin_work的文档中,我了解到 begin_work 将AutoCommit在事务期间设置为关闭,并在提交或回滚时将其设置回“开启”,但我想知道测试AutoCommit属性值是否是一种安全的实现方式isInTransaction

谢谢你的帮助。

J。

0 投票
4 回答
5466 浏览

perl - 如何将 Oracle 表导出为制表符分隔值?

我需要将数据库中的表导出到制表符分隔值文件。我在 Perl 和 SQL Plus 上使用 DBI。它是否支持(DBI 或 SQL Plus)从 TSV 文件导出和导入?

我可以编写代码来满足我的需要,但是如果可用,我想使用现成的解决方案。

0 投票
1 回答
223 浏览

sql - 如何使用带有 DBD::CSV 的 LIKE 运算符找到文字 %?

如何使用 LIKE 运算符找到文字 %?

0 投票
3 回答
966 浏览

mysql - MySQL 注释导致 Perl DBI 的绑定参数计数混乱

我有以下进行 DBI 调用的 Perl 代码:

打开时$filter,此代码因错误而死:

起初我认为这是字符串中间的三元条件的问题,(我已经多次被那个错误咬伤)但它是正确的。转储一些调试值表明查询和@bind数组构造正确。

然后我注意到查询在第一个绑定变量之后有一个 SQL 注释,所以我一时兴起将其删除。噗,成功了!

根据 MySQL docs on comments

MySQL 服务器支持三种注释样式:从“#”字符到行尾。从“--”序列到行尾。在 MySQL 中,“--”(双破折号)注释 > 样式要求第二个破折号后跟至少一个空格或控制字符(例如空格、制表符、换行符等)。

既然注释--后面跟着一个空格并且(大概)以行尾结束,为什么 MySQL 会卡住?DBI 是否在幕后使用换行符或空格做一些奇怪的事情?

0 投票
6 回答
3404 浏览

perl - 为什么我使用 Perl 的 DBI->connect 会静默失败?

为什么这段代码会默默地失败?如何让它准确地告诉我 SQL 错误是什么?

我将代码修改为如下所示:

而不是允许我使用$dbh未分配的,它会按预期失败,但它并没有告诉我它失败的确切原因。据我所知,etc 的值$db_name都设置为有效值。

我知道真正的错误(MySQL 服务器实际上没有运行),但为了将来参考,我想看看真正的错误,以防我导致身份验证失败。