現在Perlを使用してプログラムを作成しております。
今回、Mysqlより複数のレコードの値を取得して、後ほど取得したデータを使いたいので二次元ハッシュへ
キーと値をセットしたいと考えております。
ハッシュとして取得したあと、どのように二次元ハッシュへセットしたら良いのかわかりませんので、
何か良い方法がありましたら教えてください。
今の私では、ループさせて変換する方法しか浮かばず・・・
my $dsn = "DBI:mysql:$dbname:$dbhost:$dbport"; my $dsh = DBI -> connect ( $dsn, $dbuser, $dbpass, { RaiseError => 0 , mysql_enable_utf8 => 1 ,} ); my $sth = $dsh->prepare("SELECT * FROM `tbl_name`"); $sth->execute; my %NiHash; my $i=1; while (my $hash_ref = $sth->fetchrow_hashref) { my %row = %$hash_ref; while (my ($key, $value) = each(%row)) { $NiHash{$i}->{$key} = $value; } $i++; } $dsh->disconnect;
実際は、取得件数は制限をかけます。
また、他にやり方がある時は良い方法を教えてください。
よろしくお願いします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。