Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como adicionar restrição padrão no MySQL


À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!