Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

luan_alves

select do sql server só retorna 1 linha

Recommended Posts

Boa noite a todos, estou conectando em um banco de dados sql server 2005 com o driver sqlsrv. Ele faz a conexão certinho porém na hora de executar algum select ele só me traz 1 retorno, mas eu sei que a tabela tem mais de 200 linhas. Alguem sabe me informar o que é?

o meu script de testes esta assim

$dsn  = 'sqlsrv:Server=xxxx;Database=xxxx';
$username = 'xxxxx';
$password = 'xxxx';
$options = array('CharacterSet ' => 'UTF-8');
$db = new PDO($dsn, $username, $password, $options);
try {

   $busca = $db->prepare("SELECT *  FROM [PORTAL_CLIENTE].[dbo].[empreendimentos]");
   //$busca->bindValue(':email', $email,PDO::PARAM_STR);
   //$busca->bindValue(':senha', $senha,PDO::PARAM_STR);

   $busca->execute();
   $teste = $busca->fetch();
   var_dump($teste);
   $linhas = $busca->rowCount();

Compartilhar este post


Link para o post
Compartilhar em outros sites

troque

$busca->fetch();

 

por

$busca->fetchAll();

 

ai vai retornar todos os registros

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela a resposta de todos!

Mas o problema era eu mesmo, eu fiz o teste com o while e ele me trazia a informação, o problema era porque o PDO do Sql Server não conta as linhas com rowCount() e sim com count($resultado), desta forma o meu codigo código ficou da seguinte forma.

 

$busca = $db->prepare("SELECT *  FROM [PORTAL_CLIENTE].[dbo].[empreendimentos]");
   //$busca->bindValue(':email', $email,PDO::PARAM_STR);
   //$busca->bindValue(':senha', $senha,PDO::PARAM_STR);

   $busca->execute();
   $linhas = count($busca)

 

**Este código esta desta forma porque só serviu para testes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.