Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

E14 - SQL: Wstawianie rekordów

poniedziałek,

E14 - SQL: Wstawianie rekordów

Struktura tabeli

SQL Insert

Wstawianie rekordu

W zapytaniu INSERT określamy nazwę tabeli i pola gdzie zostaną wstawione dane (names(nid,fname,lname)). W przypadku pól oznaczonych atrybutem auto_increment (autonumerowanie) lub mających inną zdefiniowaną wartość domyślną, nie musimy uwzględniać ich w zapytaniu INSERT, ponieważ zostaną wypełnione automatycznie. W pierwszym przykładzie jawnie wstawiono wartość pola nid, aby zademonstrować, że jest to możliwe. W przypadku pola auto_increment nie musi to być kolejna liczba, ważne jest jedynie, żeby przyjęta wartość nie występowała już w tabeli (w takim przypadku zapytanie wygeneruje błąd).

W części zapytania zawierającej właściwe dane (VALUES(105,'John','Smith')) istotne jest zachowanie kolejności pól zdefiniowanej w pierwszym fregmencie (names(nid,fname,lname)). Łańcuchy znaków umieszcza się w apostrofach, jeśli apostrofy nadmiarowo zastosujemy do wartości numerycznych, baza danych skonwertuje pole do właściwego typu. W przypadku danych będących wynikiem obliczeń lub zwracanych przez funkcję, zastosowanie apostrofów spowoduje potraktowanie instrukcji jako łańcuch znaków, np. w przypadku pola typ tekstowego wyrażenie '2+2' zostanie zapisane dosłownie jako "2+2".

SQL Insert

Zapytanie z drugiego przykładu pomija pole autonumerowane, zdając się na mechanizm bazy danych. Równoważnym zapytaniem jest "INSERT INTO names(nid,fname,lname) VALUES(NULL,'John','Hudson')".

SQL Insert

Wielokrotne wstawianie rekordu

W bazie danych MySQL jednym zapytaniem INSERT można wstawić kilka wierszy. Zestawy wstawianych danych oddziela się przecinkiem.

SQL Insert

INSERT INTO SELECT

Odmianą zapytania INSERT jest konstrukcja INSERT INTO SELECT. Wstawiane dane są wynikiem zapytania SELECT. W przykładzie jest to dokładnie jeden rekord, jednak po zmianie warunku (np. nid < 10) może być ich więcej. Dane pobrane zapytaniem SELECT można wstawiać także do innej tabeli, pod warunkiem, że jej struktura na to pozwoli.

SQL Insert

Artykuł: Teoria emocji kolorów

Teoria emocji kolorów

Artykuł: DRAM Speculative Leadoff

DRAM Speculative Leadoff

Artykuł: Burst Mode DMA

Burst Mode DMA

Artykuł: Tryby DMA

Tryby DMA

Artykuł: DMA w kontekście historycznym

DMA w kontekście historycznym

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły