gsilva23 0 Posted February 25, 2019 Report Share Posted February 25, 2019 Boas, tou a desenvolver uma base de dados dinâmica para uma empresa, utilizo php, html e o phpmyadmin. Eis a minha questão: se eu apagar um registo por ex o 8, quando volto a inserir ele não insere na linha com ID 8, mas sim na 9 . Porque isso acontece?? Obg e boa programação Link to post Share on other sites
tiago.f 22 Posted February 25, 2019 Report Share Posted February 25, 2019 Olá, provavelmente porque a coluna ID é autoincrement. https://www.w3schools.com/sql/sql_autoincrement.asp Vê a definição da tabela e confirma. :) Link to post Share on other sites
gsilva23 0 Posted February 25, 2019 Author Report Share Posted February 25, 2019 Sim, mas se tirar o auto incremento os dados em lista serão ordenados na mesma por ID? penso que não Link to post Share on other sites
tiago.f 22 Posted February 25, 2019 Report Share Posted February 25, 2019 Se retirares o autoincrement, terás que ser tu a gerir o valor dessa coluna e isso dependerá do resto da definição da coluna. Por que razão queres retirar o autoincrement? Link to post Share on other sites
gsilva23 0 Posted February 25, 2019 Author Report Share Posted February 25, 2019 Eu não pretendo retirar, simplesmente quando quero inserir dados numa linha anteriormente eliminada ele não deixa, "salta" um ID à frente. Apago a linha 8, quero inserir de novo mas ele insere na 9. Link to post Share on other sites
tiago.f 22 Posted February 25, 2019 Report Share Posted February 25, 2019 Acho que a questão aqui é que não deverias sequer dizer qual o ID que queres inserir. Esta coluna, sendo autoincrement, é gerida automaticamente pelo mysql. Mostra por favor o código que insere na BD Link to post Share on other sites
gsilva23 0 Posted February 25, 2019 Author Report Share Posted February 25, 2019 (edited) <?php include 'databaseprodutos.php';?> //faz a ligação à BD <?php $Tipo=$_POST['Tipo']; $Quantidade=$_POST['Quantidade']; $Linha=$_POST['Linha']; //execute the query mysqli_query($conn, "INSERT INTO blank(Tipo,Quantidade,Linha) //Insere na BD VALUES('$Tipo','$Quantidade','$Linha')"); echo 'Dados Inseridos com sucesso' ; ?> PS: eu n digo onde quero inserir ele insere na linha asseguir Edited February 25, 2019 by gsilva23 Link to post Share on other sites
tiago.f 22 Posted February 25, 2019 Report Share Posted February 25, 2019 Então está tudo a funcionar como esperado. Simplesmente esquece o ID da linha que apagaste. Uma nova linha terá um ID gerado automaticamente que poderás depois usar para, por exemplo, relações entre com entidades/tabelas. Se de facto isto é um problema para o sistema (o que com a informação que tenho não me parece) então se calhar não deverias estar a apagar linhas e a criar novas, mas sim a actualizar as existentes. Sem mais detalhes e uma explicação do porquê de isto ser um problema...diria que está tudo ok. 1 Report Link to post Share on other sites
gsilva23 0 Posted February 25, 2019 Author Report Share Posted February 25, 2019 Sim eu também tenho a tabela de atualizar. Obg Link to post Share on other sites
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