Ćwiczenia w kwerendach wprowadzających/wstawiających

Bazując na bazie testowej Sakila, wykonaj następujące ćwiczenia. Pod listą zadań znajduje się przypomnienie składni polecenia INSERT INTO.

  1. Stworzyć kwerendę wprowadzającą do tabeli actor następujące dane.
polewartość
actor_id201
first_nameAndrew
last_nameMcConaughey
last_update2020-10-21 14:12:23

2. Stworzyć kwerendę dodającą do tabeli film_actor następujące dane. Nieokreślone dane pozostawić domyślne.

actor_idfilm_id
2011
2012
2013

3. Utworzyć tabelę actor_copy zgodną z definicją tabeli actor.

4. Utworzyć zapytanie wykonujące kopię danych z tabeli actor do tabeli actor_copy.

Klauzula/polecenie INSERT INTO służy do dodawania danych do bazy danych. Jego składnię można przedstawić na następującym diagramie.

Diagram polecenia INSERT INTO. Dokumentacja Oracle SQL, https://docs.oracle.com/cd/B12037_01/appdev.101/b10807/13_elems025.htm.

Ważnym jest do wskazania, że diagram ten nie uwzględnia możliwości dodawania wielu wierszy tabeli jednocześnie (co jest standardowo możliwe w MySQLu).

Wyróżniamy 3 podstawowe warianty polecenia.

INSERT INTO staff VALUES (3, 'Przemek', 'Jedlikowski', 5, NULL, 'przemek@localhost', 1, 1, 'przemek', some_function('123'), NOW());

W ten sposób dodajemy nowy wiersz, podając wartości dla każdej kolumny.

INSERT INTO staff (first_name, last_name, address_id, store_id, username) VALUES ('Przemek2', 'Jedlikowski2', 6, 2, 'przemek2');

W ten sposób dodajemy nowy wiersz, podając wartości dla wybranych 5 kolumn (first_name, last_name, address_id, store_id, username). Wartości w pozostałych kolumnach będą domyślne (wg definicji tabeli).

INSERT INTO staff (first_name, last_name, address_id, store_id, username) VALUES ('Przemek2', 'Jedlikowski2', 6, 2, 'przemek3'),
('Przemek2', 'Jedlikowski2', 6, 2, 'przemek4'),
('Przemek2', 'Jedlikowski2', 6, 2, 'przemek5'),
('Przemek2', 'Jedlikowski2', 6, 2, 'przemek6');

W ten sposób dodajemy kilka nowych wierszy, co do zasady analogicznie do poprzedniego przykładu.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.