“Neste post, discutiremos como usar a restrição padrão na coluna MySQL. Aprenderemos como usar esse tipo de restrição na definição de esquema da tabela para uma coluna específica.”
Se isso soa interessante, vamos mergulhar e aprender mais.
Sintaxe de restrição padrão do MySQL
O trecho abaixo mostra a sintaxe da restrição padrão:
col_name data_type padrão default_value;
Vamos explorar a sintaxe acima.
Começamos com o Column_Name, que especifica o nome da coluna na qual você deseja definir uma restrição padrão. Em seguida, definimos o tipo de dados para a referida coluna.
A palavra -chave padrão é seguida pelo valor padrão, que define um valor literal. Portanto, se você inserir ou atualizar uma linha que não inclua um valor para essa coluna, o MySQL usará o valor padrão definido em vez de um tipo nulo.
É bom ter em mente que o valor padrão não pode ser uma expressão ou uma função.
É uma boa prática definir a restrição padrão durante a definição da tabela. Isso ajuda a preservar os dados na tabela, e nenhum dado anterior é definido como nulo.
Exemplo prático
O exemplo a seguir mostra como definir a restrição padrão durante a criação da tabela.
mysql> criar banco de dados zero_day;
Consulta ok, 1 linha afetada (0.00 seg)
Use o banco de dados de destino:
mysql> use zero_day;
Banco de dados alterado
Crie uma tabela com o esquema mostrado abaixo:
MySQL> Criar registros de tabela (
-> Id int não nulo Auto_increment Primário Chave,
-> Relatório_name Varchar (255) Não NULL,
-> relation_date data não nula,
-> relation_author Varchar (100) padrão 'anônimo',
-> Gravidade no NULL,
-> Verifique (gravidade> 0)
->);
A consulta acima cria uma tabela chamada_records com várias colunas. Preste atenção à coluna Relatório_Author. Definimos uma restrição padrão e definimos o valor padrão como "anônimo".
Portanto, se não especificarmos o valor para essa coluna, o MySQL usará esse valor em vez de nulo.
Você pode confirmar o esquema da tabela após o fato usando o comando DESC:
Registros DESC;
Isso deve devolver a definição da tabela como uma tabela.
Como você pode ver, o report_author contém um valor padrão enquanto o restante das colunas usa nulo como o valor padrão.
Para testar isso, podemos inserir os registros como mostrado:
Insira em registros (Relatório_name, Relatórios_date, Gravidade)
valores ('desc-100', '2022-01-20', 6);
A declaração de inserção acima adiciona um registro à tabela sem fornecer o valor para os relatórios_table.
Isso deve forçar o MySQL a usar o valor padrão como mostrado:
mysql> selecione * dos registros;
A tabela de saída:
+----+-------------+-------------+---------------+----------+
| id | Relatório_name | Relatório_date | Relatório_Author | gravidade |
+----+-------------+-------------+---------------+----------+
| 1 | Desc-100 | 2022-01-20 | Anônimo | 6 |
+----+-------------+-------------+---------------+----------+
1 linha no conjunto (0.00 seg)
Como podemos ver, a tabela contém o valor "anônimo" em vez de nulo.
Adicione a restrição padrão na tabela existente
Também podemos adicionar uma restrição padrão a uma tabela existente usando o comando ALTER TABLE, como mostrado:
A sintaxe do comando é como mostrado:
Alterar tabela tabela_name
Alterar coluna column_name Definir default default_value;
Por exemplo, para adicionar uma restrição padrão à coluna de gravidade:
MySQL> ALTER TABLE REGISTRA ALTER COLUNA SETIDADE DE REVISTA DE COLUMA PADRÃO 5;
Isso deve atualizar a coluna de gravidade para incluir a restrição padrão com um valor de 5.
Conclusão
Neste post, discutimos como usar o conjunto e usar a restrição padrão em uma coluna de tabela.