2. Utwórz tabelę adresy o kolumnach id_adresu (liczba całkowita

Transkrypt

2. Utwórz tabelę adresy o kolumnach id_adresu (liczba całkowita
1. Utwórz bazę danych uczelnia.
Create database uczelnia;
2. Utwórz tabelę adresy o kolumnach id_adresu (liczba całkowita, klucz podstawowy,
autoinkrementacja), miasto (łańcuch znaków do 20 bajtów) , ulica (łańcuch znaków do 30 bajtów),
numer_domu (liczba całkowita)
CREATE TABLE adresy (
id_adresu INT AUTO_INCREMENT PRIMARY KEY,
miasto VARCHAR(20),
ulica VARCHAR(30),
numer_domu INT
)
2a. Utwórz tabelę o nazwie studenci o kolumnach id_studenta (liczba całkowita, klucz podstawowy,
autoikrementacja), imie (łańcuch znaków do 20 bajtów, wartość domyślna 'brak'), nazwisko
(łańcuch znaków do 30 bajtów, pole nie może mieć wartości NULL), id_adresu (liczba całkowita,
klucz obcy do tabeli adresy)
CREATE TABLE studenci (
id_studenta INT AUTO_INCREMENT,
imie VARCHAR(20) DEFAULT 'brak' ,
nazwisko VARCHAR(30) NOT NULL,
id_adresu INT REFERENCES adresy(id_adresu),
PRIMARY KEY (id_studenta)
);
3. Do tabeli o nazwie studenci dodaj kolumny pesel (11 znaków, jako drugi atrybut tabeli) oraz
semestr (liczba całkowita mniejsza od 11)
ALTER TABLE studenci ADD
pesel CHAR(11);
ALTER TABLE studenci ADD
semestr INT ;
ALTER TABLE studenci
ADD CONSTRAINT chk_test CHECK (semestr<11);
4. Zmodyfikuj kolumnę pesel tak aby wartości zawarte w niej musiały być unikalne
ALTER TABLE studenci ADD UNIQUE (pesel)
5a. Do tabeli studenci dodaj kolumnę o nazwie data
ALTER TABLE studenci ADD data DATE;
5b. Zmień nazwę kolumny data na data_urodzenia
ALTER TABLE studenci drop column data ;
alter table studenci add data_urodzenia date
6. Uzupełnij tabelę adresy następującymi danymi:
1, Bialystok, Lipowa, 1
2, Warszawa, Marszalkowska 30
INSERT INTO adresy (`id_adresu`, `miasto`, `ulica`, `numer_domu`) VALUES (NULL,
' Bialystok ', ' Lipowa ', 1);
INSERT INTO adresy (`id_adresu`, `miasto`, `ulica`, `numer_domu`) VALUES (NULL,
' Warszawa ', ' Marszalkowska ', 30);
7. Uzupełnij tabelę studenci następującymi danymi i sprawdź czy działa CHECK ograniczający
długość peselu:
1, 'Jan', 'Kowalski', '12345678901', 4, 2
2, 'Adam', 'Nowak', '09876543210', 5, 1
INSERT
VALUES
INSERT
VALUES
INTO studenci (id_studenta, imie, nazwisko, pesel, semestr, id_adresu)
(null, 'Jan', 'Kowalski', '12345678901', 4, 2);
INTO studenci (id_studenta, imie, nazwisko, pesel, semestr, id_adresu)
(null, 'Adam', 'Nowak', '09876543210', 5, 1);
8. Zmień imię studentowi o identyfikatorze 2 na Andrzej w tabeli studenci.
UPDATE studenci SET imie='Andrzej' WHERE id_studenta=2;
9. Zmień adres zamieszkania Janowi Kowalskiemu na Bialystok, Sienkiewicza 50
UPDATE adresy SET miasto='Bialystok',ulica='Sienkiewicza', numer_domu = 50
WHERE id_adresu =
(SELECT id_adresu
FROM studenci
WHERE imie='Jan' AND nazwisko='Kowalski');
10. Usuń Andrzeja Nowaka z tabeli studenci
DELETE FROM studenci WHERE imie='Andrzej' AND nazwisko='Nowak';
12. Zmień nazwę tabeli studenci na absolwenci
RENAME TABLE studenci TO absolwenci;
13. Usuń tabelę absolwenci
DROP TABLE absolwenci;
14. Usuń tabelę adresy
DROP TABLE adresy;
15. Usuń bazę danych uczelnia.
Drop database uczelnia;