sql >> Database teknologi >  >> RDS >> Mysql

Kan php PDO hente to resultatsæt? Og hvis ja, hvad er bedre 1 resultatsæt eller mere end 1?

Ja PDO kan hente to (eller flere) rækkesæt, så længe databasen du bruger understøtter det. Jeg tror MS SQL Server og MySQL begge understøtter denne funktionalitet, men i skrivende stund SQLite ikke.

Den funktion, du ønsker, er PDOStatement::nextRowset

Så i dit eksempel ovenfor kan du måske gøre noget som;

$sth = $dbh->prepare("SELECT * FROM tb1 WHERE cond1;
                      SELECT * FROM tb2 WHERE cond2");
$sth->execute();
$rowset1 = $sth->fetchAll();
$sth->nextRowset();
$rowset2 = $sth->fetchAll();

print_r($rowset1);
print_r($rowset2);

Det er helt rimeligt, at en enkelt lagret procedure returnerer mere end ét rækkesæt.



  1. Ikke-taltegn, der returnerer positivt, når der bruges ISNUMERIC() i SQL Server

  2. Hvordan begrænser man inkluderer på en belongsToMany-forening i Sequelize JS?

  3. Opgrader MySQL til MariaDB 10 (Del 2 – Opgrader MariaDB/MySQL 5.5 til version 10.0)

  4. SQL QUERY Resultat arrangement problem