Bazując na bazie testowej Sakila, wykonaj następujące ćwiczenia. Pod listą zadań znajduje się przypomnienie składni polecenia INSERT INTO
.
- Stworzyć kwerendę wprowadzającą do tabeli
actor
następujące dane.
pole | wartość |
actor_id | 201 |
first_name | Andrew |
last_name | McConaughey |
last_update | 2020-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_id | film_id |
201 | 1 |
201 | 2 |
201 | 3 |
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.
![](https://zeszyt.jedlikowski.com/wp-content/uploads/2020/10/image-1024x630.png)
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.