DELIMITER $$ DROP PROCEDURE IF EXISTS `root`.`proc` $$ CREATE [email="DEFINER=`root`@`localhost"]DEFINER=`root`@`localhost[/email]` PROCEDURE `proc`() BEGIN SET NAMES utf8; SELECT miasto FROM adresy; SELECT concat(miasto,' ',miasto) AS miasta FROM adresy; END $$ DELIMITER ;
Powyzej procedura skladowana, wywolujac ktora otrzymujemy dwa rowsety (z dwoch selectow). Obydwie tabele mam wypelnione danymi - pod 'MySQL Query Browser' wyswietla prawidlowo dane z obydwu tabel.
<? $conn=new PDO('mysql:host=localhost;dbname=root','root','root'); $q=$conn->query('CALL proc()'); $r=$q->fetchAll(PDO::FETCH_ASSOC); $q->nextRowset(); $r=$q->fetchAll(PDO::FETCH_ASSOC); ?>
Kod
Array ( [0] => Array ( [miasto] => poznań ) [1] => Array ( [miasto] => warszawa ) )
Array ( )
Array ( )
Wyswietla jedynie dane pochodzace z pierwszego rowseta. Jak dostac sie do drugiego?