Guest User

Untitled

a guest
Feb 1st, 2017
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 5.39 KB | None | 0 0
  1. --Na poczatek pokazemy rejestracje nowego uzytkownika
  2. --Po odpaleniu klient_rejestracja metoda ta zapisuje informacje w tabelach
  3. -- o nazwach Klient oraz Uzytkownik
  4. SELECT * FROM klient_lista('true')
  5.  
  6. EXEC klient_rejestracja
  7. @login = 'Marek',
  8. @haslo = 'TrudneHaslo',
  9. @imie = 'Marek',
  10. @nazwisko = 'Nowak',
  11. @adres = 'ul. Nowa 2/3 61-100 Leszno',
  12. @telefon = '655261234',
  13. @email = 'marek@wp.pl'
  14.  
  15. SELECT * FROM klient_lista('true')
  16.  
  17. --Jak widzimy, nowy uzytkownik zostaje dodany do bazy danych.
  18. --Teraz pokazemy, ze nie da sie dodac uzytkownika o takim samym loginie
  19.  
  20. EXEC klient_rejestracja
  21. @login = 'Marek',
  22. @haslo = 'TrudneHaslo',
  23. @imie = 'Marek',
  24. @nazwisko = 'Nowak',
  25. @adres = 'ul. Nowa 2/3 61-100 Leszno',
  26. @telefon = '655261234',
  27. @email = 'marek@wp.pl'
  28.  
  29. --Dostalismy komunikat 'Taki login jest już zajęty!'
  30. --Sprobujmy zmienic login, ale nie zmieniajmy maila
  31.  
  32. EXEC klient_rejestracja
  33. @login = 'MarekMarek',
  34. @haslo = 'TrudneHaslo',
  35. @imie = 'Marek',
  36. @nazwisko = 'Nowak',
  37. @adres = 'ul. Nowa 2/3 61-100 Leszno',
  38. @telefon = '655261234',
  39. @email = 'marek@wp.pl'
  40.  
  41. --Dostalismy komunikat 'Taki mail jest już w bazie!'
  42. --Poprawmy maila na unikalny
  43.  
  44. SELECT * FROM klient_lista('true')
  45.  
  46. EXEC klient_rejestracja
  47. @login = 'MarekMarek',
  48. @haslo = 'TrudneHaslo',
  49. @imie = 'Marek',
  50. @nazwisko = 'Nowak',
  51. @adres = 'ul. Nowa 2/3 61-100 Leszno',
  52. @telefon = '655261234',
  53. @email = 'marek2@wp.pl'
  54.  
  55. SELECT * FROM klient_lista('true')
  56.  
  57. --Nowy klient zostal dodany
  58. --Sprobujmy teraz usunac uzytkownika. Mozemy zrobic to na dwa sposoby - albo podajac
  59. -- login uzytkownika, albo jego id
  60.  
  61. SELECT * FROM klient_lista('true')
  62.  
  63. EXEC klient_usuwanie @id = 3
  64. EXEC klient_usuwanie @login = 'MarekMarek'
  65.  
  66. SELECT * FROM klient_lista('true')
  67.  
  68. --Jak widzimy, dwoch uzytkownikow zniknelo z listy. Nie zostali oni jednak usunieci z bazy
  69. -- danych, poniewaz absolutnie nie chcemy tracic jakichkolwiek informacji.
  70. --Sprobujemy teraz ponownie deaktywowac konta tych samych uzytkownikow.
  71.  
  72. EXEC klient_usuwanie @id = 3
  73. EXEC klient_usuwanie @login = 'MarekMarek'
  74.  
  75. --Wygenerowalo to komunikat 'Ten uzytkownik jest już nieaktywny!'
  76. --Sprobujemy teraz usunac nieistniejacych uzytkownikow.
  77.  
  78. EXEC klient_usuwanie @id = 10
  79. EXEC klient_usuwanie @login = 'ABC'
  80.  
  81. --Wygenerowalo to komunikat 'Taki użytkownik nie istnieje!'
  82. --Pokazemy teraz liste tych ukrytych uzytkownikow
  83.  
  84. SELECT * FROM klient_lista('false')
  85.  
  86. --Proba recznego usuniecia informacji o uzytkowniku z bazy nie powiedzie sie,
  87. -- poniewaz utworzone zostaly odpowiednie triggery na tabelach uzytkownik oraz klient
  88.  
  89. DELETE FROM Uzytkownik WHERE login = 'AdamBajsztok'
  90. DELETE FROM Klient WHERE imie = 'Danuta' AND nazwisko = 'Kos'
  91.  
  92. SELECT * FROM klient_lista('true')
  93. SELECT * FROM klient_lista('false')
  94.  
  95. --Aktywujmy naszych uzytkownikow. Mozna to zrobic przez id LUB login
  96. -- Proba podania dwoch parametrow skutkuje bledem
  97.  
  98. EXEC klient_przywracanie @id = 4, @login = 'DanutaKos'
  99.  
  100. --
  101.  
  102. EXEC klient_przywracanie @id = 1
  103. EXEC klient_przywracanie @login = 'DanutaKos'
  104. EXEC klient_przywracanie @id = 3
  105. EXEC klient_przywracanie @login = 'MarekMarek'
  106. SELECT * FROM klient_lista('false')
  107. SELECT * FROM klient_lista('true')
  108.  
  109. -- Mozemy zmienic dane klienta, odwolujemy sie do klienta za pomoca loginu LUB id
  110. -- Podanie blednego skutkuje komunikatem, ze dany klient nie istnieje
  111.  
  112. SELECT * FROM klient_lista('true')
  113.  
  114. EXEC klient_zmienImie
  115. @login = 'DanutaKos',
  116. @imie = 'Irena'
  117.  
  118. EXEC klient_zmienNazwisko
  119. @id = 4,
  120. @nazwisko = 'Nowaczyk'
  121.  
  122. EXEC klient_zmienAdres
  123. @login = 'DanutaKos',
  124. @adres = 'ul. Poznanska 5/10'
  125.  
  126. EXEC klient_zmienTelefon
  127. @id = 4,
  128. @telefon = '697101010'
  129.  
  130. EXEC klient_zmienMail
  131. @login = 'DanutaKos',
  132. @email = 'abc@wp.pl'
  133.  
  134. SELECT * FROM klient_lista('true')
  135.  
  136. --
  137.  
  138. -- Klienta mozemy awansowac na stalego klienta
  139.  
  140. SELECT * FROM klient_lista('true')
  141.  
  142. EXEC klient_awansuj @id = 1
  143. EXEC klient_awansuj @login = 'Marek'
  144.  
  145. SELECT * FROM klient_lista('true')
  146.  
  147. -- A takze mozemy degradowac stalego klienta do poziomu klienta
  148.  
  149. SELECT * FROM klient_lista('true')
  150.  
  151. EXEC klient_degraduj @id = 1
  152. EXEC klient_degraduj @login = 'Marek'
  153.  
  154. SELECT * FROM klient_lista('true')
  155.  
  156. -- Mozemy podejrzec liste uzytkownikow specjalnych
  157.  
  158. SELECT * FROM specjalni_lista('true')
  159.  
  160. -- Mozemy stworzyc nowego administratora oraz moderatora
  161.  
  162. SELECT * FROM specjalni_lista('true')
  163.  
  164. EXEC administrator_dodawanie
  165. @login = 'admin',
  166. @haslo = 'haslo'
  167.  
  168. EXEC moderator_dodawanie
  169. @login = 'moderator',
  170. @haslo = 'haslo'
  171.  
  172. SELECT * FROM specjalni_lista('true')
  173.  
  174. --
  175. --
  176. --Dwie metody filtrowania produktow
  177. --Za pomoca INTERSECT (przekroj zbiorow)
  178. SELECT * FROM towar_producent('Samsung')
  179. INTERSECT
  180. SELECT * FROM towar_tanszyNizNetto(1000)
  181. INTERSECT
  182. SELECT * FROM towar_drozszyNizNetto(500)
  183. INTERSECT
  184. SELECT * FROM towar_czyDostepny('true')
  185.  
  186. --
  187. --Za pomoca dynamicznego budowania zapytania
  188.  
  189. EXEC towar_filtrowanie
  190. @producent = 'Samsung',
  191. @cenaNetto_wiecejNiz = 500,
  192. @cenaNetto_mniejNiz = 1000,
  193. @czyDostepny = 'true'
  194.  
  195. --
  196. --Robimy dwa zamowienia
  197.  
  198. EXEC zamowienie_utworzNowe
  199. @idKlienta = 1
  200.  
  201. EXEC zamowienie_utworzNowe
  202. @login = 'DanutaKos'
  203.  
  204. --Sprobujmy dodac wiecej towarow niz jest w magazynie
  205.  
  206. EXEC zamowienie_dodajTowar
  207. @idZamowienia = 1,
  208. @idTowaru = 11,
  209. @ilosc = 10
  210.  
  211. --Poprawne zapytanie
  212.  
  213. EXEC zamowienie_dodajTowar
  214. @idZamowienia = 1,
  215. @nazwaTowaru = 'iPhone 7 32GB black',
  216. @ilosc = 5
  217.  
  218. --
  219.  
  220. EXEC zamowienie_usunTowar
  221. @idZamowienia = 1,
  222. @idTowaru = 11
Add Comment
Please, Sign In to add comment