Podsumowanie: w tym samouczku dowiesz się, jak używać instrukcji MySQL INSERT
do wstawiania jednego lub więcej wierszy do tabeli.
Wprowadzenie do instrukcji INSERT MySQL
InstrukcjaINSERT
pozwala wstawić jeden lub więcej wierszy do tabeli., Poniżej przedstawiono składnię instrukcji INSERT
:
w tej składni
- najpierw należy podać nazwę tabeli i listę kolumn oddzielonych przecinkami w nawiasach po
INSERT INTO
. - następnie umieść oddzieloną przecinkami listę wartości odpowiednich kolumn w nawiasach według słowa kluczowego
VALUES
.
liczba kolumn i wartości musi być taka sama. Ponadto pozycje kolumn muszą odpowiadać pozycjom ich wartości.,
aby wstawić wiele wierszy do tabeli za pomocą pojedynczej instrukcji INSERT
, należy użyć następującej składni:
Code language: SQL (Structured Query Language) (sql)
w tej składni wiersze są oddzielone przecinkami w klauzuli VALUES
.
MySQL Wstaw przykłady
utwórzmy nową tabelę o nazwietasks
do Ćwiczenia instrukcjiINSERT
.,
1) MySQL INSERT – prosty przykład wstawiania
następująca instrukcja wstawia nowy wiersz do tabelitasks
:
MySQL zwraca następujący komunikat:
Code language: SQL (Structured Query Language) (sql)
oznacza to, że jeden wiersz został wstawiony do tabelitasks
table successfully.,
to zapytanie zwraca dane z tasks
tabela:
Code language: SQL (Structured Query Language) (sql)
oto wyjście:
w tym przykładzie podaliśmy wartości tylko dla kolumn title
I priority
. Dla innych kolumn, MySQL używa wartości domyślnych.
kolumnatask_id
jest kolumnąAUTO_INCREMENT
. Oznacza to, że MySQL generuje sekwencyjną liczbę całkowitą za każdym razem, gdy wiersz jest wstawiany do tabeli.,
start_date
, due_date
I description
kolumny używają NULL
jako wartości domyślnej, dlatego MySQL używa NULL
aby wstawić do tych kolumn, jeśli nie podasz ich wartości w instrukcji INSERT
.
2) MySQL INSERT – Wstawianie wierszy za pomocą przykładu wartości domyślnej
Jeśli chcesz wstawić wartość domyślną do kolumny, masz dwa sposoby:
- Ignoruj zarówno nazwę kolumny, jak i wartość w instrukcji
INSERT
., - Określ nazwę kolumny w klauzuli
INSERT INTO
I użyj słowa kluczowegoDEFAULT
w klauzuliVALUES
.
poniższy przykład pokazuje drugą drogę:
w tym przykładzie podaliśmy kolumnę priority
I słowo kluczowe DEFAULT
.
ponieważ domyślną wartością kolumnypriority
jest 3, Jak podano w definicji tabeli:
Code language: SQL (Structured Query Language) (sql)
MySQL używa liczby 3 do wstawienia do kolumnypriority
.,”>
3) MySQL INSERT – Wstawianie dat do tabeli przykład
aby wstawić literalną wartość daty do kolumny, należy użyć następującego formatu:
Code language: SQL (Structured Query Language) (sql)
w tym formacie:
następująca instrukcja wstawia nowy wiersz do tabeli tasks
z początkiem i końcem tabeli.wartości daty płatności:
poniższy obrazek pokazuje zawartość tasks
tabeli po wstawce:
możliwe jest użyj wyrażeń w klauzuli VALUES
., Na przykład, poniższe polecenie dodaje nowe zadanie z bieżącą datą dla kolumn daty rozpoczęcia i daty zakończenia:
w tym przykładzie użyliśmy funkcji CURRENT_DATE()
jako wartości dla kolumn start_date
I due_date
. Zauważ, że funkcja CURRENT_DATE()
jest funkcją date, która zwraca bieżącą datę systemową.,
oto zawartość tasks
tabela po wstawce:
4) MySQL INSERT – wstawianie wielu wiersze przykład
następująca instrukcja wstawia trzy wiersze do tabeli tasks
:
w tym przykładzie dane każdego wiersza są określone jako lista wartości w klauzuli VALUES
.,
MySQL zwraca następujący komunikat:
Code language: SQL (Structured Query Language) (sql)
oznacza to, że trzy wiersze zostały wstawione pomyślnie bez duplikatów i ostrzeżeń.
Code language: SQL (Structured Query Language) (sql)
tabela tasks
zawiera następujące dane: