SergioRP 0 Denunciar post Postado Outubro 8, 2012 Olá, eu queria saber como faz para apagar somente o último registro de uma tabela no MySQL... Podem ajudar? Vlw Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Outubro 8, 2012 Supondo a maior chave de uma tabela : delete tabela where id = (select max(id) from tabela) Compartilhar este post Link para o post Compartilhar em outros sites
SergioRP 0 Denunciar post Postado Outubro 8, 2012 Supondo a maior chave de uma tabela : delete tabela where id = (select max(id) from tabela) delete tabela ou delete from tabela? -q Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Outubro 8, 2012 delete tabela ou delete from tabela? -q Acho que a syntax no MySql é delete from. Compartilhar este post Link para o post Compartilhar em outros sites
SergioRP 0 Denunciar post Postado Outubro 8, 2012 Acho que a syntax no MySql é delete from. Tentei fazer isso e o site me retornou o seguinte erro: You can't specify target table 'teste' for update in FROM clause Compartilhar este post Link para o post Compartilhar em outros sites
Wanderson Valerio 102 Denunciar post Postado Outubro 8, 2012 Já tentou assim? <?php $SQL = "DELETE FROM `myTbl` WHERE `id` = (SELECT MAX(`id`) FROM `myTbl`)"; ?> Compartilhar este post Link para o post Compartilhar em outros sites
SergioRP 0 Denunciar post Postado Outubro 8, 2012 Já tentou assim? <?php $SQL = "DELETE FROM `myTbl` WHERE `id` = (SELECT MAX(`id`) FROM `myTbl`)"; ?> De novo o site retornou o erro You can't specify target table 'teste' for update in FROM clause Compartilhar este post Link para o post Compartilhar em outros sites
Ricardo Barantini 33 Denunciar post Postado Outubro 8, 2012 Eu faria assim. <?php $query = mysql_query("SELECT id FROM tabela ORDER BY id DESC LIMIT 1"); $res = mysql_fetch_array($query); $id = $res['id']; $query = mysql_query("DELETE FROM tabela WHERE id = '".$id."'"); ?> Compartilhar este post Link para o post Compartilhar em outros sites
Wanderson Valerio 102 Denunciar post Postado Outubro 8, 2012 Cara, posta o seu código para vermos como está. Compartilhar este post Link para o post Compartilhar em outros sites
Fernando C 128 Denunciar post Postado Outubro 8, 2012 tente a função last_insert_id: DELETE FROM TABELA where ID =(last_insert_id()); Compartilhar este post Link para o post Compartilhar em outros sites
DiegoAngra07 21 Denunciar post Postado Outubro 9, 2012 Eu faria assim. <?php $query = mysql_query("SELECT id FROM tabela ORDER BY id DESC LIMIT 1"); $res = mysql_fetch_array($query); $id = $res['id']; $query = mysql_query("DELETE FROM tabela WHERE id = '".$id."'"); ?> Dessa maneira vai funcionar. Amigo do tópico, você não pode colocar a tabela que está fazendo DELETE (ou um UPDATE) na cláusula em uma subquery da clausula WHERE. Faça como este colega sugeriu, em duas partes. Compartilhar este post Link para o post Compartilhar em outros sites