[英]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
和\\pset
是psql
客戶端使用的格式化命令。 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.