すでにサイトでこれを検索しましたが、私の質問に答えるものは見つかりませんでした。詳細は次のとおりです。
単純な選択クエリを使用してデータベースにクエリを実行していますが、現実的には (シナリオを考えると) 約 5 ~ 6 レコードを超えることはありません。複数が返されたかどうかを確認したいだけです。複数のリターンがあった場合 (else ステートメントで)、1 つだけが返された場合は、スクリプトを続行します。
my $sql = qq { SELECT col1、col2、col3 FROM テーブル WHERE col1 = 'フー' }; my $sth = $dbc->prepare_cached($sql) または die "ステートメントを準備できませんでした: " . $dbc->errstr; $sth->execute() または die "ステートメントを実行できませんでした: " . $sth->errstr; # 返された複数の行を効率的にチェックし、true の場合は進行する方法がわからない... これは私の問題です! 行が返されたかどうかを確認し、1 つ以上の行のチェックを続行するかどうかを確認するために、ネストされた if を考えていますか? しかし、これをどのようにチェックできますか (カウント関数のように?) if (my $ref = $sth->fetchrow_hashref()) { # 1行返された… } そうしないと { # 複数の行が返されました... うーん! }
私が見つけられなかったスレッドを知っている場合は、この質問に答えてください。リダイレクトしてください。このスレッドを無効にします。
よろしく、BorisTheBulletDodger!