Às vezes você pode precisar adicionar valor padrão à coluna ou adicionar coluna com valor padrão no MySQL. Você pode fazer isso facilmente usando a restrição padrão no MySQL. Veja como adicionar restrição padrão no MySQL.
Como adicionar restrição padrão no MySQL
Aqui estão as etapas para adicionar restrição padrão no MySQL. Você pode adicionar a restrição padrão ao criar a tabela usando a instrução CREATE TABLE ou após a criação da tabela usando a instrução ALTER TABLE. Veremos essas duas abordagens.
Como adicionar restrição padrão usando CREATE TABLE
Aqui está a sintaxe para adicionar a restrição padrão usando a instrução CREATE table.
mysql> create table table_name( column1 column1_definition DEFAULT default_value, column2 column2_definition, ... );
Na consulta SQL acima, você precisa especificar o nome da tabela table_name . Além disso, você precisa mencionar DEFAULT após a definição da coluna do campo para o qual deseja adicionar o valor padrão. Você também precisa especificar o valor padrão de sua coluna.
Bônus de leitura:MySQL selecione as N linhas principais por grupo
Aqui está um exemplo para adicionar restrição padrão no MySQL.
mysql> create table sample_data( id int, order_date date, amount int DEFAULT 0 ); mysql> insert into sample_data(id, order_date) values(1,'2020-08-01'); mysql> select * from sample_data; +------+------------+--------+ | id | order_date | amount | +------+------------+--------+ | 1 | 2020-08-01 | 0 | +------+------------+--------+
Na consulta SQL acima, criamos sample_data tabela com valor DEFAULT 0 para a coluna quantidade. Como você pode ver, quando inserimos valores em sample_data , não mencionamos o valor de quantia coluna. No entanto, o MySQL atribui automaticamente o valor padrão 0 a esta coluna.
Bônus de leitura:Como obter dados da última semana no MySQL
ALTER TABLE adiciona coluna com valor padrão no MySQL
Da mesma forma, você pode adicionar uma restrição padrão usando a instrução ALTER TABLE para tabelas existentes. Aqui está a sintaxe para isso
mysql> ALTER TABLE table_name ALTER column_name SET DEFAULT default_value;
Na instrução ALTER TABLE acima, você precisa mencionar table_name, column_name e valor_padrão
Veja um exemplo para adicionar restrição padrão usando ALTER TABLE. Digamos que você queira definir o valor padrão para order_date coluna na tabela acima sample_data
mysql> ALTER TABLE sample_data ALTER order_date SET DEFAULT '2020-08-03'; mysql> insert into sample_data(id) values(2); mysql>select * from sample_data; mysql> select * from sample_data; +------+------------+--------+ | id | order_date | amount | +------+------------+--------+ | 1 | 2020-08-01 | 0 | | 2 | 2020-08-03 | 0 | +------+------------+--------+
Na consulta SQL acima, adicionamos a restrição padrão a order_date coluna. Depois disso, fornecemos apenas id valor da coluna em nossa instrução INSERT. No entanto, o MySQL preenche automaticamente order_date e quantidade colunas com base em seus valores padrão.
Bônus de leitura:banco de dados de cópia MySQL
Como remover o valor padrão da coluna
Se você precisar remover o valor padrão da coluna, use a instrução DROP DEFAULT. Aqui está a sintaxe para a consulta DROP DEFAULT.
mysql> ALTER TABLE table_name ALTER column_name DROP DEFAULT;
Na consulta acima, você precisa especificar o table_name e column_name para a qual você deseja eliminar a restrição DEFAULT.
Aqui está um exemplo de restrição DROP DEFAULT no SQL.
mysql> ALTER TABLE sample_data ALTER order_date DROP DEFAULT;
Na declaração acima, removemos a restrição padrão de order_date coluna.
O Ubiq facilita a visualização de dados em minutos e o monitoramento em painéis em tempo real. Experimente hoje!