繁体   English   中英

Perl DBI运行PSQL代码

[英]Perl dbi running psql code

我想知道是否有人对perl dbi连接到postgres数据库有任何经验。 因此,我可以连接到我的postgres数据库并执行选择查询,但不能执行psql查询。 有谁知道是否有可能在perl dbi中这样做? 现在,我使用以下代码来获取选择查询:

my $SQL = $dbh->prepare("select*from pg_settings;);
    $SQL -> execute();
    while ( my ($settings_fetch) = $SQL->fetchrow_array() )
    {
        return $settings_fetch;
    }

与模块PG:DBI

但是,当我尝试将\\x\\pset格式包装在prepare语句中时,它不起作用。 它没有给出任何错误,但输出不会包装,我仍然得到相同的输出。 现在,我有点困惑,因为它不执行psql命令并包装提取的行,或者选择始终以相同的方式运行,而包装仅显示在显示器上,而不能用dbi提取

我想要这个的原因是因为我获取了数组中的选择数组并将其输出到word,但是当我得到带有很多列的大select输出时,它的确在单词表中变得凌乱,所以我希望在我的\\x变量中Word文档,这样我就不会在水平方向垂直放置10列。

\\x\\psetpsql客户端使用的格式化命令。 Postgres服务器不使用它们。

如果要格式化从Perl程序输出的数据,则必须在Perl中进行格式化。

例如,而不是写:

foreach my $column (@$settings_fetch) {
    print $column;
}

你可以:

foreach my $column (@$settings_fetch) {
    print $column . "\n";
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM