Bruness Posted April 25, 2006 at 10:35 PM Report #24337 Posted April 25, 2006 at 10:35 PM Boas,. Estou a fazer um pequeno script e tenho que saber qual é o ultimo id introduzido numa tabela. A tabela tem +- este aspecto. tabela: nuke_release lid|release|imdb 5 | rele_5 |00258 4 | rele_4 |00215 3 | rele_3 |04815 2 | rele_2 |58215 1 | rele_1 |00150 Em que o lid é uma PRIMARY KEY que se auto incrementa. então é a questão é que eu agora preciso de saber qual foi o ultimo valor introduzido na tabela, para o poder usar. Então pensei em usar um select e a função MAX(). Estou a usar isto: SELECT max(lid) FROM nuke_release; Mas este select não me está a devolver o valor correcto. Alguma sugestão?
saramgsilva Posted April 25, 2006 at 10:49 PM Report #24347 Posted April 25, 2006 at 10:49 PM bem isto é 1 duvida de sql e nao de php, apesar de ser para um script! 😄 o max() devia funcionar... tem mesmo que funcionar.... diz la o valor que te deu...pode ser k se descobra o erro 😛 www.saramgsilva.com As minhas apps no WP7 Marketplace Youtube : Galinho - Windows Phone 7.5
overcloked Posted April 25, 2006 at 11:07 PM Report #24354 Posted April 25, 2006 at 11:07 PM Tens ai info sobre a função max() http://www.w3schools.com/sql/func_max.asp Isso que fizes-te, à primeira vistá está bem...
Bruness Posted April 25, 2006 at 11:53 PM Author Report #24361 Posted April 25, 2006 at 11:53 PM Bem acho que encontrei outr solução. Estou a usar isto: $id = mysql_query("SELECT lid FROM `nuke_nsngd_downloads` ORDER BY lid DESC"); $nro = mysql_fetch_row($id)or die(mysql_error()); $my_last = $nro[0]; print " (Last number $my_last) </td>"; E parece estar a funcionar 😛
saramgsilva Posted April 26, 2006 at 12:03 AM Report #24363 Posted April 26, 2006 at 12:03 AM Bem acho que encontrei outr solução. Estou a usar isto: $id = mysql_query("SELECT lid FROM `nuke_nsngd_downloads` ORDER BY lid DESC"); $nro = mysql_fetch_row($id)or die(mysql_error()); $my_last = $nro[0]; print " (Last number $my_last) </td>"; E parece estar a funcionar 😄 ya é bem!! 😛 www.saramgsilva.com As minhas apps no WP7 Marketplace Youtube : Galinho - Windows Phone 7.5
Gurzi Posted April 26, 2006 at 02:12 PM Report #24419 Posted April 26, 2006 at 02:12 PM então mas o max() encontra-te o maior valor que a coluna seleccionada dispoe, e não o ultimo valor
Bruness Posted April 26, 2006 at 05:23 PM Author Report #24451 Posted April 26, 2006 at 05:23 PM então mas o max() encontra-te o maior valor que a coluna seleccionada dispoe, e não o ultimo valor Pois mas no caso como é uma primary key e ela auto implemeta-se de + 1 valor sempre que é adicionado uma nova linha. tipo: eu adicionava uma nova linha iria ter isto: lid|release|imdb 6 | rele_6 |00258 5 | rele_5 |00258 4 | rele_4 |00215 3 | rele_3 |04815 2 | rele_2 |58215 1 | rele_1 |00150 Logo o novo max do lid seria o valor 6. por isso acho que deveria funcionar.... Mas seja como for a outra solução que arranjei está a funcionar 😛
pedrotuga Posted April 27, 2006 at 12:55 PM Report #24604 Posted April 27, 2006 at 12:55 PM epa.. o SQL que tens no primeiro post está bem. Pa... no primeiro post não escreveste nada... mas para extraires dados de um resultado de um query tens sempre que utilizar um função da familia mysql_fetch_*. Na solução que tu tens a no teu segundo post está um código mau. Tipo fazes um query que te seleciona as linhas todas de uma tabela mas depois só usas uma... isso é péssimo. Se tiveres uma base de dados maiorzita pode trazer problemas sérios e desnecessários. Já experimentaste por o SQL do primeiro post no código do teu segundo post?
Bruness Posted April 30, 2006 at 01:00 AM Author Report #24922 Posted April 30, 2006 at 01:00 AM Assim também está a funcionar 🙂 $id = mysql_query("SELECT max(lid) FROM `nuke_nsngd_downloads`"); $nro = mysql_fetch_row($id)or die(mysql_error()); $my_last = $nro[0]+1; print " (Last number $my_last) </td>";
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now