Rozdział 10. ♦ Podstawy SQL 295
Druga wersja instrukcji INSERT ma ogólną postać:
INSERT [INTO] tabela SET kolumnalawartośćl. kolumna2=wartość2.....kolumaN-wartośćN
Jej przeznaczenie jest takie samo, jak w przypadku pierwszej wersji, czyli wprowadzenie do tabeli tabela nowego wiersza zawierającego wskazane wartości. Jeśli zatem mamy tabelę Klienci utworzoną za pomocą instrukcji CREATE w postaci:
CREATE TABLE KLIENCI(
Klientld INTEGER PRIMARY KEY AUTO INCREMENT.
Imię VARCHAR(25).
Nazwisko VARCHAR (25).
Adres VARCHAR (60)
i chcemy wprowadzić do niej dane znanego nam już Jana Kowalskiego, tak aby identyfikator został wygenerowany automatycznie, należy zastosować konstrukcję:
INSERT INTO Klienci SET Klientld-NULL. Imie-'Jan'. Nazwisko-'Kowalski'. Adres="Klonowa 24, Poznań":
Taka instrukcja w celu zwiększenia czytelności może być rozbita na kilka wierszy, np.:
INSERT INTO Klienci SET KlientId=NULL.
Imie='Jan'.
Nazwisko='Kowalski’.
Adres="Klonowa 24. Poznań":
Podobnie jak w przypadku wyżej omawianej wersji instrukcji INSERT, tak i tym razem kolejność kolumn nie ma znaczenia, można zatem zastosować również instrukcję w postaci:
INSERT INTO Klienci SET Nazwisko-'Kowalski'. Imię-'Jan'. Adres-"Klonowa 24. Poznań", KlientId=NULL:
Jeśli w tabeli istnieją kolumny, w których jest dopuszczalna wartość NULI, i nie chcemy ich wypełniać danymi, można je pominąć. W naszym przypadku możemy np. pominąć adres, wprowadzając dane za pomocą komendy:
INSERT INTO Klienci SET Klientld-NULL. Imie='Jan‘. Nazwisko-'Kowalski':
Jak widać, ta postać instrukcji INSERT jest bardzo podobna do już omawianej wersji i mają tu zastosowanie takie same zasady, jak w poprzednim przypadku.
Pierwsza z omówionych postaci instrukcji INSERT pozwala również na jednoczesne wstawienie do tabeli wielu wierszy. Dane każdego z nich muszą być jednak wtedy ujęte w nawiasy okrągłe i oddzielone od siebie znakami przecinka. Taka konstrukcja będzie miała ogólną postać: