84 lines
2.6 KiB
Plaintext
84 lines
2.6 KiB
Plaintext
|
#
|
||
|
# ID: 5d9e4b
|
||
|
# Nazwa: notatki bazy danych
|
||
|
# Opis: 01.12.2023/05.12.2023 TRUNCATE, zadania z DML
|
||
|
# Publiczny: 0
|
||
|
# Data utworzenia/ostatniej edycji (UTC): 2023-12-05 12:43:49
|
||
|
#
|
||
|
|
||
|
-- Lekcja 11
|
||
|
|
||
|
-- TRUNCATE służy do usuwania rekordów jednocześnie resetując AUTO_INCREMENT indeksów, czyli zacznie numerować od początku
|
||
|
TRUNCATE tabela;
|
||
|
|
||
|
-- (Zadania z PDFem który pani wysłała na mobiDzienniku)
|
||
|
-- 1. Tworzenie tabeli zamówienia
|
||
|
CREATE TABLE zamowienia(
|
||
|
id INT UNSIGNED NOT NULL,
|
||
|
imie VARCHAR(128),
|
||
|
nazwisko VARCHAR(128),
|
||
|
adres_email VARCHAR(128),
|
||
|
liczba_choinek INT,
|
||
|
liczba_mikolajow INT,
|
||
|
liczba_reniferow INT,
|
||
|
info BOOLEAN
|
||
|
);
|
||
|
|
||
|
-- 2. Zmienianie id na klucz główny
|
||
|
ALTER TABLE zamowienia
|
||
|
ADD PRIMARY KEY (id);
|
||
|
|
||
|
-- 5. Dodawanie danych
|
||
|
INSERT INTO zamowienia(id, imie, nazwisko, adres_email)
|
||
|
VALUES (1, "Jan", "Kowalski", "jKowalski@poczta.pl");
|
||
|
|
||
|
-- Osobne zadanie od pani:
|
||
|
-- Wprowadź dwa rekordy do tabeli: (Ala Kowalska, l_choinek=5), (Tomek Kowalski, l_choinek=8)
|
||
|
|
||
|
INSERT INTO zamowienia(id, imie, nazwisko, liczba_choinek)
|
||
|
VALUES (2, "Ala", "Kowalska", 5),
|
||
|
(3, "Tomek", "Kowalski", 8);
|
||
|
|
||
|
INSERT INTO zamowienia
|
||
|
VALUES (4, "Ola", "Kowalska", "", 2, 4, 0, "");
|
||
|
|
||
|
-- Lekcja 12
|
||
|
|
||
|
-- 1. Aktualizuj wszystkie rekordy o parzystym identyfikatorze zmieniając imię na Franek i dodając liczbę choinek: 6 oraz liczbę reniferów: 8
|
||
|
UPDATE zamowienia
|
||
|
SET imie = "Franek",
|
||
|
liczba_choinek = 6,
|
||
|
liczba_reniferow = 8
|
||
|
WHERE id %2 = 0;
|
||
|
|
||
|
-- 2. Aktualizuj liczbę choinek zwiększając liczbę choinek o 3 choinki dla wszystkich rekordów gdzie nazwisko kończy się na i
|
||
|
UPDATE zamowienia
|
||
|
SET liczba_choinek = liczba_choinek + 3
|
||
|
WHERE nazwisko LIKE "%i";
|
||
|
|
||
|
-- 3. Ustaw liczbę mikołajów na 7 dla wszystkich rekordów o imieniu zawierającym r
|
||
|
UPDATE zamowienia
|
||
|
SET liczba_mikolajow = 7
|
||
|
WHERE imie LIKE "%r%";
|
||
|
|
||
|
-- 4. Usuń wszystkie rekordy z nieparzystym ID
|
||
|
DELETE FROM zamowienia
|
||
|
WHERE id %2 != 0;
|
||
|
|
||
|
-- 5. Wyczyść tabelę
|
||
|
TRUNCATE zamowienia;
|
||
|
|
||
|
-- 6. Wyświetl strukturę tabeli
|
||
|
DESCRIBE zamowienia;
|
||
|
|
||
|
-- 7. Utwórz tabelę prezenty zawierającą kolumnę ID będące liczbą całkowitą i kluczem podstawowym, kolumnę prezenty będącą typem tekstowym i kolumnę id_zamowienia będącą kluczem obcym dla tabeli zamowienia
|
||
|
CREATE TABLE prezenty(
|
||
|
id INT PRIMARY KEY,
|
||
|
prezenty VARCHAR(255),
|
||
|
id_zamowienia INT UNSIGNED NOT NULL,
|
||
|
FOREIGN KEY(id_zamowienia) REFERENCES zamowienia(id),
|
||
|
);
|
||
|
|
||
|
-- 8. Zmień nazwę tabeli prezenty na niespodzianka
|
||
|
ALTER TABLE prezenty
|
||
|
RENAME niespodzianka;
|