Ir para conteúdo

POWERED BY:

Arquivado

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

André Severino

[Resolvido] Erro de memória, após um select no mysql

Recommended Posts

Olá pessoal, fiz uma pesquisa usando filtos e tem aproximadamente 10mil registros no banco de dados.

Só que ele não finaliza a pesquisa, ele fica pesquisando até dar uns 10 segundos e retorna o seguinte erro.

 

//query = SELECT u.*, i.* FROM users u, interessecargos i WHERE i.cargo_id = '$txtcargo'
Fatal error: Out of memory (allocated 786432) (tried to allocate 10651088 bytes) in C:\xampp\htdocs\tc\xadm\adm_pesquisaPerfil.php on line 42

Bom peguei e aumentei a memória para 128m utilizando o

ini_set("memory_limit",'128M');
, e dei um echo usando um mysql_num_rows, ele encontrou + de 500 mil registros(o que é impossível), pois ele tem no máximo 15k de registros.

 

$qrTotal	= mysql_query($sql_pesq) or die ("Erro usuario paginacao: ".mysql_error());
$numTotal	= mysql_num_rows($qrTotal);	
echo $numTotal;  

// Resultado exibido na tela: Quantidade de registros encontrados.quantidade total de registros 524112.

 

Alguém sabe uma forma de arrumar esse erro ? ?

 

Bom pessoal, esqueci de um pequeno detalhe.

Relacionar o fk_id_usuario da tabela usuário na tabela interesse ^_^

 

Agora ele está selecionando a quantidade certa, pois rodei a query direta no mysql.

 

Em relação ao erro de memória é porque ele estava armazenda uma quantidade muito grande de registros na memória, o qual foi sanada quando aumentei para 128m, agr que arrumei o erro na seleção removi o ini_set e deixei default.

 

 

obrigado e até +

Compartilhar este post


Link para o post
Compartilhar em outros sites

intão cara...

essas 2 tabelas devem ter uma ligação entre elas..., você tem q adicionar mais uma restrição a sua query

SELECT u.*, i.* FROM users u, interessecargos i WHERE i.cargo_id = '$txtcargo' AND u.cargo_id = i.cargo_id

sakou?

você tem que restringir para q apenas os dados dos usuarios que tem interesse naquele cargo sejam buscados

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.