Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
|
pl:dydaktyka:sbd:2009:projekty:mpk-gis:projekt_logiczny [2010/01/19 23:03] sbd09 |
pl:dydaktyka:sbd:2009:projekty:mpk-gis:projekt_logiczny [2019/06/27 15:50] (aktualna) |
| |
===== -. Analiza zależności funkcyjnych i normalizacja tabel ===== | ===== -. Analiza zależności funkcyjnych i normalizacja tabel ===== |
| Stworzony przez nas schemat bazy danych spełnia warunki postaci normalnej (1NF, 2NF, 3NF). Dane są atomiczne i nie występuje redundancja. Używamy tylko kluczy jednoargumentowych. |
| |
===== -. Projektowanie operacji na danych ===== | ===== -. Projektowanie operacji na danych ===== |
=== Stops === | === Stops === |
Dodawanie przystanku: | Dodawanie przystanku: |
<code> "INSERT INTO stop (name) VALUES ('".$name."')"</code> | <code> "INSERT INTO stops (name) VALUES ('".$name."')"</code> |
Usunięcie przystanku: | Usunięcie przystanku: |
<code> "DELETE FROM stop WHERE id=$ID"</code> | <code> "DELETE FROM stops WHERE id=$ID"</code> |
Uaktualnie rekordu: | Uaktualnie rekordu: |
<code> "UPDATE stop SET name='".$new_name."' WHERE id=$id"</code> | <code> "UPDATE stops SET name='".$new_name."' WHERE id=$id"</code> |
=== Small_Stops === | === Small_Stops === |
Pobranie współrzędnych punktów: | Pobranie współrzędnych punktów: |
<code>"SELECT ST_AsText(coordinate) AS coordinate FROM small_stop WHERE id=$id"</code> | <code>"SELECT ST_AsText(coordinate) AS coordinate FROM small_stops WHERE id=$id"</code> |
Dodanie nowego przystanku: | Dodanie nowego przystanku: |
<code>"INSERT INTO small_stop (id_stop,add_information, coordinate) VALUES ($id,'".$add_information."',ST_GeomFromText('".$point."'))"</code> | <code>"INSERT INTO small_stops (id_stop,add_information, coordinate) VALUES ($id,'".$add_information."',ST_GeomFromText('".$point."'))"</code> |
Uaktualnie rekordu: | Uaktualnie rekordu: |
<code> "UPDATE small_stop SET add_information='".$add_information_update."',id_stop=$id_stop_update, coordinate=ST_GeomFromText('".$new_coordinate."', -1) WHERE id=$id"</code> | <code> "UPDATE small_stops SET add_information='".$add_information_update."',id_stop=$id_stop_update, coordinate=ST_GeomFromText('".$new_coordinate."', -1) WHERE id=$id"</code> |
| Wyszukiwanie przystanków w obrębie danego punktu: |
| <code>SELECT * FROM small_stops WHERE ST_DWithin(coordinate, 'POINT(1000 1000)', 100.0); |
| </code> |
| === Ways === |
| Dodanie nowej drogi: |
| <code>"INSERT INTO way (id_way,line) VALUES($id_way, ST_GeomFromText('LINESTRING $this->to_add ',-1))"</code> |
| Uaktualnie rekordu: |
| <code> "UPDATE way SET line= ST_GeomFromText('LINESTRING $this->to_add',-1) WHERE id_way=$id_way"</code> |