これを行うためのより良い方法がなければならないように思えますが、まだ見つけていません。そして、これを行う方法を使用できるのは私だけではないと確信しています。1行に1つのフィールドのみを生成するSQLクエリを実行し、そのフィールドをスカラーに割り当てます。(私の場合、クエリの結果が複数のフィールド/行になる場合、スクリプトの破損よりも心配する必要があります)。
たとえば、SQL サーバーからタイムスタンプを取得するには、次を使用できます。
my $timestamp;
my $cmd = $dbh->prepare('SELECT cast(now() AS timestamp);') or die $!;
$cmd->execute();
while (my @asd = $cmd->fetchrow_array) { $timestamp = $asd[0] }
汚れていますが、機能します。しかし、特に perl と postgresql が DBI を介して相互に通信できることを考えると、単純な割り当てには 4 行を使用するのは少し多すぎるように思えます。確かに、サブルーチンを書くことはできますが、データを送信するのと同じくらい簡単にデータを取得できるネイティブなものはありません$dbh->do()
か?
はい、私はグーグルを試しました。