Marcelo Mussi Posted March 3, 2012 Report Share Posted March 3, 2012 Boa Noite,Gostaria de saber se é possível um sql que mostre todos os registros que estão faltando em um campo que é auto_increment.Ex.:1234678Ele mostre que esta faltando o "5".Obrigado, Quote Link to comment Share on other sites More sharing options...
0 Marcelo Mussi Posted March 6, 2012 Author Report Share Posted March 6, 2012 Alguém pode me ajudar? Quote Link to comment Share on other sites More sharing options...
0 Fabiano Abreu Posted March 7, 2012 Report Share Posted March 7, 2012 Olá Marcelo Mussi,Não sei se é possível, talvez através de um while, algo que faça um loop, ai você iria armazenando os valores que não existem, mas não tenho a miníma ideia de como pode ser feito.Abraços._ _Fabiano AbreuPapo Sql - Um blog com tutoriais, dicas e truques sobre SQL Quote Link to comment Share on other sites More sharing options...
0 Marcelo Mussi Posted March 9, 2012 Author Report Share Posted March 9, 2012 (edited) Boa Noite,Eu tentei fazer com o FOR, porém quando ele acha o primeiro valor vazio, ele da pau porque minha combinação não bate mais na sequencia.include('../conexao.php'); $sql = "SELECT * FROM xxx"; $resultado = mysql_query($sql,$conexao); $linhas = mysql_num_rows($resultado); for( $a = 0; $a < $linhas; $a++ ) { $reg = mysql_result($resultado,$a,"registro"); if($a != $reg) { echo $a; echo "<br />"; } } Edited March 9, 2012 by Marcelo Mussi Quote Link to comment Share on other sites More sharing options...
0 mJi Posted March 10, 2012 Report Share Posted March 10, 2012 Tente assim:include('../conexao.php'); $sql = mysql_query('SHOW TABLE STATUS LIKE "nomeDaTabela"'); $sql = mysql_fetch_array($sql); for($a = 1; $a < $sql['Auto_increment']; $a++){ $query = mysql_query('SELECT * FROM nomeDaTabela WHERE campoAutoIncrement = '.$a); if(mysql_num_rows($query) === 0) echo 'O valor '.$a.' não está presente.</br>'; }Substitua os nomes de tabela e campos pelos de seu banco de dados. Quote Link to comment Share on other sites More sharing options...
0 Denis Courcy Posted March 13, 2012 Report Share Posted March 13, 2012 Alguém pode me ajudar?Não dá pra responder, porque este tipo de atitude não tem nexo. Os campos ID que usam auto_increment são exclusivamente para ligar uma tabela a outra. Não há por quê ficar perdento tempo em orgalizar as lacunas. Isto só criará, a médio e longo prazo, inconsistência no banco de dados. Quando a inconsisitência ocorrer você vai chorar para descobrir o porquê da falha. Quote Link to comment Share on other sites More sharing options...
Question
Marcelo Mussi
Boa Noite,
Gostaria de saber se é possível um sql que mostre todos os registros que estão faltando em um campo que é auto_increment.
Ex.:
1
2
3
4
6
7
8
Ele mostre que esta faltando o "5".
Obrigado,
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.