MySQL – Auto Incremento de valores em colunas – 08

Auto Incremento em colunas (AUTO_INCREMENT)

  • O auto incremento permite que um número único seja gerado quando um novo registro é inserido em uma tabela.
  • Em MYSQL trata-se da palavra chave AUTO_INCREMENT, cujo valor inicial padrão é 1, e se incrementa de 1 em 1.
  • Para que o valor da coluna se inicie em 100, por exemplo, após criar a tabela e especificar a coluna que usará auto incremento execute o comando a seguir:
ALTER TABLE tabela AUTO_INCREMENT = 100;
  • Ao inserir valores na tabela, não é necessário especificar o valor para a coluna de auto-incremento.
  • Só é permitido usar uma coluna de auto incremento por tabela, geralmente do tipo inteiro.
  • Necessita também da constraint NOT NULL (configurado automaticamente)

Auto Incremento  – Exemplo

Vamos criar uma tabela de nome tbl_teste_incremento para estudarmos o uso do auto incremento em colunas. Use o código a seguir para isso:

CREATE TABLE tbl_teste_incremento (
Codigo SMALLINT PRIMARY KEY AUTO_INCREMENT,
Nome VARCHAR(20) NOT NULL
) AUTO_INCREMENT = 15;

Agora, vamos inserir dados aleatórios na tabela para realizarmos o teste. Não se preocupe se não entender o código, pois esses comandos serão estudados nas próximas aulas:

INSERT INTO tbl_teste_incremento (Nome) VALUES (‘Ana’);
INSERT INTO tbl_teste_incremento (Nome) VALUES (‘Maria’);
INSERT INTO tbl_teste_incremento (Nome) VALUES (‘Julia’);
INSERT INTO tbl_teste_incremento (Nome) VALUES (‘Joana’);

E, finalmente, verificamos se o auto invremento funcionou executando uma consulta na tabela:

SELECT * FROM tbl_teste_incremento;

Veja o resultado no MySQL Workbench:

MySQL - Auto incremento em colunas

Verificar o valor atual do auto incremento

Podemos verificar o valor de incremento mais atual armazenado em uma tabela no banco de dados com o comando a seguir:

SELECT MAX (nome_coluna)
FROM tabela

Exemplo no banco de dados db_biblioteca:

SELECT MAX(ID_Livro)
FROM tbl_livro;

Alterar o próximo valor no campo de  Auto-Incremento

Para alterar o valor de incremento do próximo registro a ser armazenado em uma tabela, use o comando a seguir:

ALTER TABLE tabela AUTO_INCREMENT = valor;

Ex.:- Para usar o valor 90 a partir do próximo registro:

ALTER TABLE tbl_teste_incremento
AUTO_INCREMENT = 90;

Assista à vídeo-aula sobre auto incremento da Bóson Treinamentos:

Próximo: Tipos de dados comuns

Anterior: Criação de Tabelas – comando CREATE TABLE

Página inicial do Curso

Sobre Fábio dos Reis (1195 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

3 Comentários em MySQL – Auto Incremento de valores em colunas – 08

  1. Bruno Henrique // 07/08/2018 em 16:20 // Responder

    Boa tarde! Estou com uma dúvida.
    Se eu inserir diversas informações numa tabela, consequentemente a coluna do ID (auto_increment) terá seu valor automaticamente colocado para +1 em relação ao registro anterior, mas se, por exemplo, eu tenho 5 linhas preenchidas, apaguei a de ID 3, eu gostaria que a próxima inserção fosse preenchido com o ID ‘ausente’ ao invés de continuar subindo. Teria como?

  2. Carlos Alister // 29/07/2019 em 18:39 // Responder

    como meter chaves primarias como os indereços do execel

Escreva um comentário

Seu e-mail não será divulgado


*