Ir para conteúdo
Fórum Script Brasil
  • 0

contagem automática MySQL?


Tesla

Pergunta

galera não axei um titulo bom pra essa dúvida mas vai: eu queria q quando eu inserisse alguma linha na tabela a linha tivesse a id Primaria 1 e "empurrasse" as outras colunas para baixo sendo a coluna que tinha a chave primaria id 1 teria agora 2 e assim por diante, como eu faço isso, algum atributo ou o que??

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Oi, 'Tesla'!

Não há comando para isso.

Vai dar um pouco de trabalho.

FAÇA BACKUP ANTES

NÃO me responsabilizo por erros em seus dados.

Tenha a certeza de que não haja mais ninguém atualizando esta tabela.

A tabela abaixo é só um exemplo. em minha base de testes ela possui 6000 registros.

Dada a tabela cidades com a seguinte estrutura:

CREATE TABLE `cidades` (                                    
   `idCidade` int(10) unsigned NOT NULL auto_increment,      
   `nmCidade` varchar(80) NOT NULL,                          
   PRIMARY KEY  (`idCidade`),                                
   UNIQUE KEY `nmCidade` (`nmCidade`)
Siga os passos abaixo nesta ordem. O primeiro passo é desligar o auto_increment do atributo idcidade:
ALTER TABLE cidades
MODIFY idCidade int(10) unsigned NOT NULL;
Segundo: Dropar o índice primário
ALTER TABLE cidades
DROP PRIMARY KEY;
Terceiro: Alterar os valores
UPDATE cidades
SET idcidade = idcidade + 1;
Quarto: Recriar o índice primário voltando o atributo idcidade para auto_increment
ALTER TABLE cidades
MODIFY `idCidade` int(10) unsigned NOT NULL auto_increment,
ADD PRIMARY KEY(idcidade);
Quinto e último:Adicionar o registro desejado
INSERT INTO cidades (idcidade, nmcidade)
VALUES (1, 'aaaaaaa');

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...