Soms moet u mogelijk een standaardwaarde aan de kolom toevoegen of een kolom toevoegen met de standaardwaarde in MySQL. U kunt dit eenvoudig doen met behulp van de standaardbeperking in MySQL. Hier leest u hoe u een standaardbeperking in MySQL kunt toevoegen.
Hoe u een standaardbeperking in MySQL kunt toevoegen
Hier zijn de stappen om standaardbeperkingen toe te voegen in MySQL. U kunt een standaardbeperking toevoegen tijdens het maken van een tabel met de instructie CREATE TABLE, of na het maken van een tabel met de instructie ALTER TABLE. We zullen beide benaderingen bekijken.
Standaardbeperking toevoegen met CREATE TABLE
Hier is de syntaxis om standaardbeperking toe te voegen met behulp van de CREATE-tabelinstructie.
mysql> create table table_name( column1 column1_definition DEFAULT default_value, column2 column2_definition, ... );
In de bovenstaande SQL-query moet u de tabelnaam tabelnaam opgeven . Ook moet u DEFAULT vermelden na de kolomdefinitie van het veld waarvoor u de standaardwaarde wilt toevoegen. U moet ook de standaardwaarde van uw kolom specificeren.
Bonus Lezen:MySQL Selecteer Top N Rijen Per Groep
Hier is een voorbeeld om een standaardbeperking in MySQL toe te voegen.
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 | +------+------------+--------+
In de bovenstaande SQL-query maken we sample_data tabel met STANDAARD waarde 0 voor kolom bedrag. Zoals je kunt zien, wanneer we waarden invoegen in sample_data , we vermelden niet de waarde voor bedrag kolom. Toch wijst MySQL automatisch de standaardwaarde 0 toe aan deze kolom.
Bonus lezen:hoe u gegevens van vorige week in MySQL kunt krijgen
ALTER TABLE kolom toevoegen met standaardwaarde in MySQL
Op dezelfde manier kunt u een standaardbeperking toevoegen met de instructie ALTER TABLE voor bestaande tabellen. Hier is de syntaxis ervoor
mysql> ALTER TABLE table_name ALTER column_name SET DEFAULT default_value;
In de bovenstaande ALTER TABLE-instructie moet u tabelnaam, kolomnaam . vermelden en default_value
Hier is een voorbeeld om een standaardbeperking toe te voegen met ALTER TABLE. Stel dat u de standaardwaarde wilt instellen voor order_date kolom in bovenstaande 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 | +------+------------+--------+
In de bovenstaande SQL-query hebben we een standaardbeperking toegevoegd aan order_date kolom. Daarna verstrekken we alleen id kolomwaarde in onze INSERT-instructie. Toch vult MySQL automatisch order_date en bedrag kolommen op basis van hun standaardwaarden.
Bonus Lezen:MySQL Copy Database
Hoe de standaardwaarde naar kolom te verwijderen
Als u de standaardwaarde voor de kolom moet verwijderen, gebruikt u de instructie DROP DEFAULT. Dit is de syntaxis voor de DROP DEFAULT-query.
mysql> ALTER TABLE table_name ALTER column_name DROP DEFAULT;
In de bovenstaande zoekopdracht moet u de tabelnaam . specificeren en kolomnaam waarvoor u de DEFAULT-beperking wilt laten vallen.
Hier is een voorbeeld van de DROP DEFAULT-beperking in SQL.
mysql> ALTER TABLE sample_data ALTER order_date DROP DEFAULT;
In de bovenstaande verklaring hebben we de standaardbeperking verwijderd van order_date kolom.
Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te controleren. Probeer het vandaag nog!