DEFAULT
DEFAULT służy do określania domyślnych wartości, gdy te nie zostały wprowadzone podczas dodawania nowych rekordów do tabeli.
Wyobraźmy sobie sytuację, w której posiadamy tabelę zamówień, w której zdefiniowana jest data zamówienia.
Zamówienia mogą być realizowane z poziomu użytkownika lub administratora.
Jeżeli zamówienie realizuje użytkownik to data jest aktualną datą. Jeżeli zaś zamówienie realizuje administrator, ma on możliwość ręcznego zdefiniowania daty.
Jeżeli tego nie zrobi to w kolumnie daty zamówienia wprowadzana jest domyślna wartość.
Takie zachowanie możemy osiągnąć za pomocą DEFAULT.
Składnia:
DEFAULT definiuje się podczas tworzenia tabeli.
CREATE TABLA nazwa_tabeli(
nazwa_kolumny typ_kolumny ... DEFAULT wartosc
);
Przykład 1:
Utworzymy tabelę (polecenie
CREATE), która będzie przechowywała nazwiska oraz imiona.
Jeżeli imię nie zostanie określone, będzie wprowadzana domyślna wartość NIEOKREŚLONO.
CREATE TABLE test_imie(
imie VARCHAR(20) NOT NULL DEFAULT 'NIEOKRESLONO',
nazwisko VARCHAR(25) NOT NULL
);
Teraz dodamy przykładowe wiersze do tabeli poleceniem
INSERT.
INSERT INTO test_imie VALUES('Ania', 'Kowalska');
INSERT INTO test_imie(Nazwisko) VALUES('Nowak');
Sprawdźmy zawartość tabeli
test_imie.
SELECT * FROM test_imie;
imie |
nazwisko |
Ania |
Kowalska |
NIEOKRESLONO |
Nowak |
Jak widać w drugim zapytaniu
INSERT wartość dla kolumny
Imie nie została określona - domyślnie została wprowadzona wartość NIEOKRESLONO.