Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
|
pl:dydaktyka:sbd:2009:projekty:rewersy:logiczny [2010/09/11 11:19] sbd09 |
pl:dydaktyka:sbd:2009:projekty:rewersy:logiczny [2019/06/27 15:50] (aktualna) |
| |
==== -. Projektowanie operacji na danych. ==== | ==== -. Projektowanie operacji na danych. ==== |
| |
| * //Zwraca imię zalogowanego użytkownika://: |
| <code sql>SELECT imie FROM uzytkownik WHERE login= '$_SESSION["user"]'</code> |
| * //Zwraca nazwisko zalogowanego użytkownika://: |
| <code sql>SELECT nazwisko FROM uzytkownik WHERE login= '$_SESSION["user"]'</code> |
| * //Zwraca email użytkownika://: |
| <code sql>SELECT e_mail FROM uzytkownik WHERE login= '$_SESSION["user"]'</code> |
| * //Zwraca hasło zakodowane w md5://: |
| <code sql>SELECT haslo FROM uzytkownik WHERE login= '$_SESSION["user"]'</code> |
| * //Zwraca budynek://: |
| <code sql>SELECT budynek FROM uzytkownik WHERE login= '$_SESSION["user"]'</code> |
| * //Zwraca pokój://: |
| <code sql>SELECT pokoj FROM uzytkownik WHERE login= '$_SESSION["user"]'</code> |
| \\ |
| \\ |
| \\ |
| \\ |
| * //Zmienia imię użytkownika://: |
| <code sql>UPDATE uzytkownik SET imie= '$new_name' WHERE login= '$_SESSION["user"]'</code> |
| * //Zmienia nazwisko://: |
| <code sql>UPDATE uzytkownik SET nazwisko= '$new_surname' WHERE login= '$_SESSION["user"]'</code> |
| * //Zmienia email://: |
| <code sql>UPDATE uzytkownik SET e_mail= '$email' WHERE login= '$_SESSION["user"]'</code> |
| * //Zmienia hasło://: |
| <code sql>UPDATE uzytkownik SET haslo= '$pass' WHERE login= '$_SESSION["user"]'</code> |
| * //Zmienia budynek://: |
| <code sql>UPDATE uzytkownik SET budynek= '$building' WHERE login= '$_SESSION["user"]'</code> |
| * //Zmienia pokój://: |
| <code sql>UPDATE uzytkownik SET pokoj= '$room' WHERE login= '$_SESSION["user"]'</code> |
| \\ |
| \\ |
| \\ |
| \\ |
| * //Dodaje książkę://: |
| <code sql>INSERT INTO ksiazki (tytul, rok_wydania, wydawnictwo, login) VALUES ( '$title', '$year', '$publisher', '$_SESSION["user"]' )"</code> |
| * //Pobiera listę książek zalogowanego użytkownika://: |
| <code sql>SELECT tytul, rok_wydania, wydawnictwo, imie, nazwisko, ksiazki.id FROM ksiazki |
| |
| INNER JOIN napisali ON ksiazki.id=napisali.id_ksiazka |
| |
| INNER JOIN autorzy ON autorzy.id=napisali.id_autora |
| |
| WHERE login= '$_SESSION["user"]' ORDER BY tytul, id</code> |
| * //Usuwa książkę o podanym ID://: |
| <code sql>DELETE FROM autorzy WHERE id IN (SELECT DISTINCT id FROM autorzy WHERE id NOT IN |
| |
| (SELECT DISTINCT id_autora FROM napisali INNER JOIN autorzy ON id_autora= 'id')</code> |
| * //Zwraca dane książki o podanym ID://: |
| <code sql>SELECT tytul, rok_wydania, wydawnictwo, imie, nazwisko FROM ksiazki |
| |
| INNER JOIN napisali ON ksiazki.id=napisali.id_ksiazka |
| |
| INNER JOIN autorzy ON autorzy.id=napisali.id_autora |
| |
| WHERE login= '$_SESSION["user"]' AND ksiazki.id= '$id'</code> |
| * //Uaktualnij profil książki://: |
| <code sql>UPDATE ksiazki SET tytul= '$title' , rok_wydania= '$year', |
| wydawnictwo= '$publisher' WHERE login= '$_SESSION["user"]' AND id= '$id';</code> |
| * //Usuwa nieużywanych autorów (tych, do których nie ma przypisanych żadnych książek)://: |
| <code sql>DELETE FROM autorzy WHERE id IN (SELECT DISTINCT id FROM autorzy WHERE id NOT IN |
| |
| (SELECT DISTINCT id_autora FROM napisali INNER JOIN autorzy ON id_autora= 'id'))</code> |
| * //Pobiera listę książek zalogowanego użytkownika://: |
| <code sql>SELECT DISTINCT tytul, rok_wydania, wydawnictwo, imie, nazwisko, ksiazki.id, ksiazki.login FROM ksiazki |
| |
| INNER JOIN napisali ON ksiazki.id=napisali.id_ksiazka |
| |
| INNER JOIN autorzy ON autorzy.id=napisali.id_autora |
| |
| INNER JOIN przetrzymuje ON przetrzymuje.login= '$SESSION["user"]' |
| |
| WHERE przetrzymuje.id_ksiazka=ksiazki.id ORDER BY tytul</code> |
| * //zwraca login jeśli książka jest pożyczona, jeśli nie to zwraca empty//: |
| <code sql>SELECT login FROM przetrzymuje WHERE id_ksiazka= 'id'</code> |
| * //zwraca login jeśli książka jest zarezerwowana, jeśli nie to zwraca empty//: |
| <code sql>SELECT login FROM rezerwuje WHERE id_ksiazka= '$id'</code> |
| * //dokonuje rezerwacji książki o $id na osobę $login//: |
| <code sql>INSERT INTO rezerwuje (id_ksiazka, login) VALUES ('$id', '$login')</code> |
| * //usuwa rezerwację książki o $id na osobę $login//: |
| <code sql>DELETE FROM rezerwuje WHERE login= '$login' AND id_ksiazka= '$id'</code> |
| * //zwraca date pozyczenia książki//: |
| <code sql>SELECT data_wypozyczenia FROM przetrzymuje WHERE id_ksiazka= '$id'</code> |
| * //Zwraca imię i nazwisko loginu//: |
| <code sql>SELECT imie, nazwisko FROM uzytkownik WHERE login= '$login'</code> |
| * //zwraca pokoj i budynek w ktorym przesiaduje $login//: |
| <code sql>SELECT pokoj, budynek FROM uzytkownik WHERE login= '$login'</code> |
| * //zwraca email uzytkownika o loginie $login//: |
| <code sql>SELECT e_mail FROM uzytkownik WHERE login= '$login'</code> |
| * //oznacza książkę o id $id jako pożyczoną komuś o loginie login//: |
| <code sql>INSERT INTO przetrzymuje (id_ksiazka, login, data_wypozyczenia) VALUES (".$id." , '$login', 'date("Y-m-d")')</code> |
| * //usuwa książkę z bazy pozyczonych//: |
| <code sql>DELETE FROM przetrzymuje WHERE id_ksiazka= '$id'</code> |
| * //Czy w bazie jest osoba o danym loginie true/false://: |
| <code sql>SELECT * FROM uzytkownik WHERE login= '$login'</code> |
| * //Czy w bazie jest osoba o podanym imieniu i nazwisku , tak - zwraca login://: |
| <code sql>SELECT login FROM uzytkownik WHERE imie= '$name' AND nazwisko= '$surname'</code> |
| * //zwraca listę wszystkich książek dostępnych w bazie oprócz posiadanych przez zalogowanego użytkownika://: |
| <code sql>SELECT DISTINCT tytul, rok_wydania, wydawnictwo, imie, nazwisko, ksiazki.id, login FROM ksiazki |
| |
| INNER JOIN napisali ON ksiazki.id=napisali.id_ksiazka |
| |
| INNER JOIN autorzy ON autorzy.id=napisali.id_autora |
| |
| WHERE login'' '$_SESSION["user"]' ORDER BY tytul, ksiazki.id;</code> |
| * //SQL pozwalający na usunięcie użytkownika przez tego kto go zaprosił, razem z powiązaniami i książkami://: |
| * //usunięcie rezerwacji//: |
| * <code sql>DELETE FROM rezerwuje WHERE login= '$login'</code> |
| * //usunięcie zarezerwowanych książek//: |
| * <code sql>DELETE FROM rezerwuje WHERE id_ksiazka IN (SELECT id FROM ksiazki WHERE login= '$login'</code> |
| * //usunięcie przetrzymywanych książek//: |
| * <code sql>DELETE FROM przetrzymuje WHERE login= '$login'</code> |
| * //usunięcie zaproszeń//: |
| * <code sql>DELETE FROM zaproszony WHERE login_polecil= '$login'</code> |
| * //przepięcie zaproszeń (żeby nie było luki w drzewie zaproszeń)//: |
| * <code sql>DELETE FROM zaprosil WHERE zaproszony= '$login' |
| UPDATE zaprosil SET login='$_SESSION["user"]' WHERE login='$login'</code> |
| * //usunięcie książek//: |
| * <code sql>SELECT id FROM ksiazki WHERE login='$login'</code> |
| * //usunięcie użytkownika z bazy//: |
| * <code sql>DELETE FROM uzytkownik WHERE login='$login'</code> |
| * //Dodaje nowego użytkownika://: |
| <code sql>INSERT INTO uzytkownik(login, imie, nazwisko, e_mail, haslo, budynek, pokoj) |
| |
| values('$login','$name','$surname','$youremail','md5($password)','$building','$room')</code> |