#
# Skrypty przykładowe do przedmiotu RBD - Wykład02 (Relacje i Podstawy SQL)
#      (c) Wojciech Mościbrodzki
#      wyłącznie dla moich ulubionych studentów PJWSTK Gdańsk :-)
#

#
#  Uwaga: budowanie relacji w fizycznej bazie danych powinno uwzględniać spójność referencyjną
#      temat ten omówiono w treści W03
#

show databases;                          # pokazuje istniejące bazy danych

drop database if exists rbd3;
create database if not exists rbd3;     # tworzy bazę danych i podłącza klienta do niej
use rbd0;

show tables;							 # sprawdzamy, czy są jakieś tabele

drop table if exists czlowiek;

create table czlowiek (                  # przykladowa tabela
  imie char(15),
  nazwisko char(20) NOT NULL,
  urodzony date,
  placa int,
  premia numeric(4,2) DEFAULT 0,
  plec char(1) NOT NULL
);

# te inserty wpisują do wszystkich kolumn, więc nie potrzeba specyfikować nazw kolumn

insert into czlowiek values ('Jan','Nowak','1990-10-10',1800,0.11,'m');
insert into czlowiek values ('Ewa','Lisek','1984-11-04',2800,0.12,'k');

update czlowiek set nazwisko = 'Lasek' where nazwisko like 'Lisek';

select imie, nazwisko from czlowiek;

select nazwisko, placa from czlowiek where placa < 2000;

select imie, nazwisko from czlowiek where imie like 'Ewa%';

alter table czlowiek add column id int auto_increment primary key;

# teraz insert (jesli nie chcemy wymusić wartosci kolumny id) musi okreslac kolumny
insert into czlowiek (imie, nazwisko, urodzony, placa, premia, plec) values ('Iza','Lach','1984-11-04',2800,0.12,'k');

alter table czlowiek drop column premia;