Nogle gange skal du muligvis tilføje standardværdi til kolonne eller tilføje kolonne med standardværdi i MySQL. Du kan nemt gøre dette ved at bruge standardbegrænsning i MySQL. Sådan tilføjer du standardbegrænsninger i MySQL.
Sådan tilføjer du standardbegrænsning i MySQL
Her er trinene til at tilføje standardbegrænsninger i MySQL. Du kan tilføje standardbegrænsninger, mens du opretter tabel ved hjælp af CREATE TABLE-sætning, eller efter tabeloprettelse ved hjælp af ALTER TABLE-sætning. Vi vil se på begge disse tilgange.
Sådan tilføjer du standardbegrænsning ved hjælp af CREATE TABLE
Her er syntaksen til at tilføje standardbegrænsninger ved hjælp af CREATE tabelsætning.
mysql> create table table_name( column1 column1_definition DEFAULT default_value, column2 column2_definition, ... );
I ovenstående SQL-forespørgsel skal du angive tabelnavnet tabelnavn . Du skal også nævne DEFAULT efter kolonnedefinitionen for det felt, som du vil tilføje standardværdi for. Du skal også angive standardværdien for din kolonne.
Bonus Læs:MySQL Vælg Top N rækker pr. gruppe
Her er et eksempel på at tilføje standardbegrænsninger i 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 | +------+------------+--------+
I ovenstående SQL-forespørgsel opretter vi sample_data tabel med DEFAULT værdi 0 for kolonne beløb. Som du kan se, når vi indsætter værdier i sample_data , vi nævner ikke værdien for beløb kolonne. Alligevel tildeler MySQL automatisk standardværdien 0 til denne kolonne.
Bonus Læs:Sådan får du sidste uges data i MySQL
ALTER TABLE tilføje kolonne med standardværdi i MySQL
På samme måde kan du tilføje standardbegrænsninger ved hjælp af ALTER TABLE-sætningen for eksisterende tabeller. Her er syntaksen for det
mysql> ALTER TABLE table_name ALTER column_name SET DEFAULT default_value;
I ovenstående ALTER TABLE-sætning skal du nævne tabelnavn, kolonnenavn og default_value
Her er et eksempel på at tilføje standardbegrænsninger ved hjælp af ALTER TABLE. Lad os sige, at du vil indstille standardværdien for ordre_date kolonne i ovenstående tabel 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 | +------+------------+--------+
I ovenstående SQL-forespørgsel har vi tilføjet standardbegrænsning til ordre_date kolonne. Derefter giver vi kun id kolonnens værdi i vores INSERT-sætning. Alligevel udfylder MySQL automatisk ordre_date og beløb kolonner baseret på deres standardværdier.
Bonus Læs:MySQL Copy Database
Sådan fjerner du standardværdien til kolonnen
Hvis du har brug for at fjerne standardværdien for kolonnen, skal du bruge DROP DEFAULT-sætningen. Her er syntaksen for DROP DEFAULT-forespørgslen.
mysql> ALTER TABLE table_name ALTER column_name DROP DEFAULT;
I ovenstående forespørgsel skal du angive tabelnavn og kolonnenavn som du vil slette STANDARD-begrænsningen for.
Her er et eksempel på DROP DEFAULT-begrænsning i SQL.
mysql> ALTER TABLE sample_data ALTER order_date DROP DEFAULT;
I ovenstående erklæring har vi fjernet standardbegrænsningen fra order_date kolonne.
Ubiq gør det nemt at visualisere data på få minutter og overvåge i dashboards i realtid. Prøv det i dag!