Moja baza danych ma pomóc utrzymać studenta przy życiu przy minimum kosztów.

Wielkość: px
Rozpocząć pokaz od strony:

Download "Moja baza danych ma pomóc utrzymać studenta przy życiu przy minimum kosztów."

Transkrypt

1

2 Moja baza danych ma pomóc utrzymać studenta przy życiu przy minimum kosztów. Tabela products zawiera podstawowe informacje o produktach, które student może wybrać do swojej stołówki. Pogrupowane są na typy, która pomoże utrzymać zdrową zbilansowaną dietę (więcej informacji w tabeli types i opisie poszczególnych typów. W domyśle tabela products miała zawierać więcej informacji o wartości odżywczej, ale dla prostoty projektu ograniczyłem się do trzech podstawowych wartości. Jako, że zbilansowana dieta powinna zawierać odpowiednie proporcje energii pochodzącej z węglowodanów, tłuszczy i białka zawarłem właśnie te informacje w tabeli. Tabela users zawiera informacje o użytkownikach (czyli studentach, którzy docelowo mają przeżyć; śmierć studenta uznawana jest za niepowodzenie). Zawiera typowe dane potrzebne do logowania. W tabeli defaults znajdują się informacje o cenie (price) za określoną ilość produktu (value). Niezależnie od tego kolumna item_size zawiera informację o masie jednej sztuki/opakowania itp. Np. W przypadku bananów może być tak, że price wynosi 5 zł, za value 1 kg, gdzie item_size to 0,1 kg (bo tyle może ważyć jeden banan). Tabela dates przechowuje informacje o tym jakie dany użytkownik wybrał produkty i jak często chce je spożywać. Załóżmy, że mamy studenta (nazwijmy go Charles (czytaj, z francuska szarl)). Pierwsze, co powinien zrobić to wybrać produkty spośród których ma być dobierany jadłospis. Powiedzmy, że lubi twaróg półtłusty. W takim razie dodaje go do swoich produktów i ustawia przedział interwałów na małą ilość dni np. od 4 (interwal_min) do 14 (interval_max). Z tego przedziału skrypt będzie wybierał interwał główny (interval) tak, by zbilansować dietę. Im większe przedziały tym łatwiej będzie dobrać dietę, bo skrypt ma większą możliwość manewru. Jeśli z kolei nie lubi kiszonej kapusty, ale ze sprawdzonego źródła wie, że jest zdrowa więc chce jej jeść odpowiednio niewiele. W takim razie ustawia interwał od np. 80 do 200 dni. Powiedzmy, że skrypt wylosował interwał 100 dni. W takim razie średnio przybywa 0,01 kg na dzień. Gdy Charles kupi pół kilograma kapusty to dodaje ją do kupionych dzięki czemu dostaje informację czy może jeszcze jej kupić (zakładka Lista zakupów na stronie, kolumna stan).

3 //////////////////////////////////////////////////////////////////PHP//////////////////////////////////////////////////////////////////////////// conn.inc.php $dbconn3 = pg_connect("host=localhost port=5432 dbname=foodb user=postgres password=pass"); header1.inc.php session_start(); <!doctype html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="main.css" /> header2.inc.php </head> <body> <header> if(isset($_post['logout'])){ $_SESSION['logged']=0; unset($_session['user_name']); unset($_session['id']); if(isset($_session['logged']) && $_SESSION['logged']==1){ echo "Jesteś zalogowany jako ". $_SESSION['user_name']; echo "<form method='post' action='". $_SERVER['PHP_SELF']. "'>"; echo "<button type='submit' name='logout'>wyloguj</button>"; echo "</form>"; else { <form method="post" action="login.php"> <span>login: <input type="text" name="name" /></span> <span>hasło: <input type="password" name="pass" /></span> <span><button type="submit" name="login" />Zaloguj</button></span> </form> <span><a href="add_user1.php">zarejestruj się</a></span> </header> <nav> <span><a href="product_details.php">lista produktów</a></span> if($_session['logged']==1){ <span><a href='shopping_list.php'>lista zakupów</a></span> <span><a href="daily_stats.php">dzienne średnie</a></span> <span><a href="add_purchase.php">dodaj zakup</a></span> <span><a href='balance.php'>generuj zakupy</a></span>

4 </nav> footer.inc.php </body> </html> index.php header("location:product_details.php"); process.php require('conn.inc.php'); require('header1.inc.php'); require('functions.inc.php'); echo "<title></title>"; require('header2.inc.php'); if(isset($_post['butt'])){ if($_post['butt']=='edit'){ echo '<div class="info">nie mam już siły... ZIEEEW...</div>'; $query="select p.name, d.value, da.interval, da.interval_min, da.interval_max FROM products p, defaults d, dates da WHERE da.product_id=d.product_id AND d.product_id=p.product_id AND p.product_id=". $_POST['edit']. ";"; extract(pg_fetch_array($result)); <form method="post" action="process.php"><table> <tr><td colspan="2"> echo "Edytujesz produkt: ". $name;? ></td></tr> <input type="hidden" name="product_id" value=" echo $_POST['edit']; " /> <tr><td>interwał dla porcji echo $value; kg: </td><td><input type="number" name="interval" value=" echo $interval; " /></td></tr> <tr><td>interwał min.:</td><td> <input type="number" name="interval_min" value=" echo $interval_min; " /></td></tr> <tr><td>interwał maks.: </td><td><input type="number"

5 name="interval_max" value=" echo $interval_max; " /></td></tr> <tr><td><input type="submit" name="edit" value="zmień" /></td></tr> </table></form> elseif($_post['butt']=='del'){ $query = "DELETE FROM dates WHERE product_id=". $_POST['edit']. " AND user_id=". $_SESSION['id']. ";"; echo "<div class='info okinfo'>niegodny produkt został usunięty. Po co on komu w ogóle? Miałeś rację tak czyniąc Wasza Nikczemność!</div>"; else{ $query="select p.name, d.value FROM products p, defaults d WHERE d.product_id=p.product_id AND p.product_id=". $_POST['add']. ";"; extract(pg_fetch_array($result)); <form method="post" action="process.php"><table> <tr><td colspan="2"> echo "Dodajesz produkt:". $name;? ></td></tr> <input type="hidden" name="product_id" value=" echo $_POST['add']; " /> <tr><td>interwał dla porcji echo $value; kg: </td><td><input type="number" name="interval" /></td></tr> <tr><td>interwał min.:</td><td> <input type="number" name="interval_min" /></td></tr> <tr><td>interwał maks.: </td><td><input type="number" name="interval_max" /></td></tr> <tr><td><input type="submit" name="add" value="dodaj" /></td></tr> </table></form> if(isset($_post['add']) && $_POST['add']=='Dodaj'){ $query="insert INTO dates(product_id,user_id,interval,interval_min,interval_max) VALUES (". $_POST['product_id']. ",". $_SESSION['id']. ",". $_POST['interval']. ",". $_POST['interval_min']. ",". $_POST['interval_max']. ");"; if(isset($_post['edit']) && $_POST['edit']=='Zmień'){ $query="update dates SET interval=". $_POST['interval']. ", interval_min=". $_POST['interval_min']. ", interval_max=". $_POST['interval_max']. " WHERE product_id=". $_POST['product_id']. " AND user_id=". $_SESSION['id']. ";"; echo $query; require('footer.inc.php'); product_details.php require('conn.inc.php');

6 require('functions.inc.php'); require('header1.inc.php'); echo "<title>szczegóły produktów</title>"; require('header2.inc.php'); require('change_product.php'); if($_session['logged']==1){ <form action="process.php" method="post"><table class="center"> echo "<td><select name='edit'>"; $query = "SELECT product_id, name FROM products;"; while($row = pg_fetch_array($result)){ extract($row); if(is_listed($product_id)){ echo "<option value='". $product_id. "'>". $name. "</option>"; echo "</select></td>\n"; echo "<td><button type='submit' name='butt' value='edit'>edytuj</button></td>"; echo "<td><button type='submit' name='butt' value='del'>usuń</button></td>"; echo "<td><select name='add'>"; $query = "SELECT product_id, name FROM products;"; while($row = pg_fetch_array($result)){ extract($row); if(!is_listed($product_id)){ echo "<option value='". $product_id. "'>". $name. "</option>"; echo "</select></td>"; echo "<td><button type='submit' name='butt' value='add'>dodaj</button></td>"; echo "</table></form>"; list_view('product_data'); require('footer.inc'); shopping_list.php require('conn.inc.php'); require('functions.inc.php'); require('header1.inc.php'); echo "<title>lista zakupów</title>"; require('header2.inc.php'); personal_list_view('personal_to_buy_list', $_SESSION['id']); require('footer.inc');

7 login.php require('conn.inc.php'); require('header1.inc.php'); echo "<title>logowanie</title>"; require('header2.inc.php'); if($_session['logged']==1){ echo "<div class='badinfo info'>jesteś już zalogowany</div>"; else { $query = "SELECT user_name, user_id FROM users WHERE user_name='". $_POST['name']. "' AND user_pass='". $_POST['pass']. "';"; $row = pg_fetch_array($result); extract($row); if($row==""){ echo "<div class='badinfo info'>zły login lub hasło!</div>"; else { $_SESSION['logged'] = 1; $_SESSION['user_name']=$user_name; $_SESSION['id']=$user_id; echo "<div class='okinfo info'>zostałeś zalogowany jako ". $user_name. "</div>"; header( "refresh:3;url=product_details.php" ); require('footer.inc.php'); add_purchase.php require('conn.inc.php'); require('functions.inc.php'); require('header1.inc.php'); echo "<title>dodaj zakup</title>"; require('header2.inc.php'); <form id="add_purchase" action="add_purchase.php" method="post"> <table class="perslistview"> <tr> <th>fejk</th> <th class="coltext">nazwa</th> <th>data</th> <th>ilość (kg lub l)</th> <th>cena (zł)</th>

8 </tr> if(!isset($_post['step'])){ echo "<tr><td>fejk</td><td>"; echo "<select name='name'>"; $query = "SELECT p.product_id, p.name FROM products p, dates da WHERE da.product_id=p.product_id AND da.user_id=". $_SESSION['id']. " ORDER BY name;"; while($row = pg_fetch_array($result)){ extract($row); echo "<option value='". $product_id. "'>". $name. "</option>"; echo "</select>"; echo "</td><td colspan='3'>...wybierz produkt</td>"; echo "</td></tr>"; echo "<tr><td>fejk</td><td colspan='4'><button type='submit' name='step' value='1'>dalej</button></td></tr>"; elseif($_post['step']==1){ $query ="SELECT p.name, d.value, d.price, current_date FROM products p, defaults d WHERE p.product_id=". $_POST['name']. " AND d.product_id=p.product_id;"; extract(pg_fetch_array(pg_query($query))); <tr> <td>fejk</td> <td> echo $name; </td> <td><input type="date" name="purchase_date" value=" echo date('y-md'); " /></td> <td><input type="number" min="0" name="value" value=" echo $value; " /></td> <td><input type="number" min="0" name="price" value=" echo $price; " /></td> </tr> <tr> <td>fejk</td><td colspan="4"><button type="submit" form="add_purchase" name="step" value="2">dodaj zakup</button></td> </tr> <input type="hidden" name="product_id" value=" echo $_POST['name'];? >" /> elseif($_post['step']==2){ $query = "INSERT INTO shopping_list(purchase_date, product_id, value, price, user_id) VALUES ('". $_POST['purchase_date']. "', ". $_POST['product_id']. ", ". $_POST['value']. ", ". $_POST['price']. ", ". $_SESSION['id']. ");"; pg_query($query); header("location: add_purchase.php"); personal_view_without_heading('bought', $_SESSION['id']); </table> </form> add_user1.php

9 require('conn.inc.php'); require('header1.inc.php'); echo "<title>dodaj użytkownika</title>"; require('header2.inc.php'); <form action="add_user2.php" method="post"> <table> <tr><td>nazwa użytkownika</td><td><input type="text" name="name" /></td></tr> <tr><td>adres </td><td><input type=" " name=" " /></td></tr> <tr><td>hasło</td><td><input type="password" name="pass" /></td></tr> <tr><td colspan="2"><input class="submit" type="submit" name="add" value="dodaj"/></td></tr> </table> </form> require('footer.inc.php'); add_user2.php require('conn.inc.php'); require('header1.inc.php'); echo "<title>dodawanie użytkownika ". $_POST['name']. "</title>"; require('header2.inc.php'); if(!(isset($_post['name']) && isset($_post['pass']) && isset($_post[' ']))){ echo "<a href='add_user1.php'>popraw dane</a>"; else { $query = "INSERT INTO users(user_name, user_pass, user_mail) VALUES ('". $_POST['name']. "', '". $_POST['pass']. "', '". $_POST[' ']. "');"; <div class="okinfo info">użytkownik echo $_POST['name']; został dodany.</div> require('footer.inc.php'); balance.php require('conn.inc.php'); require('header1.inc.php'); require('functions.inc.php'); echo "<title></title>"; require('header2.inc.php'); <div class="info">teraz zmieniają się interwały. Jeśli proces będzie trwał zbyt długo (ponad minutę) zmień interwały, dodaj produkty lub poczytaj Szekspira</div>

10 function max_id(){ $query = "SELECT max(p.product_id) FROM products p, dates da WHERE p.product_id = da.product_id AND da.user_id=". $_SESSION['id'].";"; extract(pg_fetch_array(pg_query($query))); return $max; function get_rand_id(){ //zwraca id losowego produktu któregi is_listed jest true $max = max_id(); do{ $result=mt_rand(0,$max); while(!is_listed($result)); return $result; //chyba działa, ale jeszcze nie jestem pewien function change_interval($id){ $query = "UPDATE dates SET interval =". new_interval($id). " WHERE product_id= ". $id. " AND user_id=". $_SESSION['id']. ";"; function new_interval($id){ $query = "SELECT dsc.energia, da.interval, da.interval_max, da.interval_min FROM dates da, daily_stats_clean dsc WHERE da.user_id=dsc.user_id AND da.product_id=". $id. " AND da.user_id=". $_SESSION['id']. ";"; extract(pg_fetch_array(pg_query($query))); if(($energia-2200)<0){ return mt_rand($interval_min, $interval); else { return mt_rand($interval, $interval_max); function balance(){ $i=1; $query = "SELECT * FROM percentage_clean WHERE user_id=". $_SESSION['id']. ";"; extract(pg_fetch_array(pg_query($query))); while( ($prot_per<0.10) ($prot_per>0.15) ($carb_per<0.55) ($carb_per>0.65) ($fat_per<0.15) ($fat_per>0.30)){ change_interval(get_rand_id()); echo "a "; $query = "SELECT * FROM percentage_clean WHERE user_id=". $_SESSION['id']. ";"; extract(pg_fetch_array(pg_query($query))); $i++; flush(); ob_flush(); echo "<div class='info okinfo'>udało się! Jej!</div>"; balance(); require('footer.inc');

11 daily_stats.php require('conn.inc.php'); require('header1.inc.php'); echo "<title>dzienne średnie</title>"; require('header2.inc.php'); require('functions.inc.php'); personal_list_view('daily_stats', $_SESSION['id']); personal_list_view('percentage', $_SESSION['id']); <table> <tr> <th colspan="3">akceptowalne przedziały</th> </tr> <tr> <td>10% - 15%</td> <td>55% - 65%</td> <td>15% - 30%</td> </tr> </table> require('footer.inc'); functions.inc.php function is_listed($id){ $query = "SELECT product_id FROM dates WHERE product_id=". $id. " AND user_id=". $_SESSION['id'].";"; if(pg_num_rows(pg_query($query))!=0){ return true; else { return false; //echo tej funkcji nie wyświetla 0 dla false, ale dla true wyświetla 1!!?? function list_view($view_name){ // wyświetla tabelarycznie $query= "SELECT column_name FROM information_schema.columns WHERE table_name = '". $view_name. "'"; echo "<table>"; echo "<tr>"; while($row = pg_fetch_array($result)){ extract($row); echo "<th>". $column_name. "</th>"; echo "</tr>"; $query = "SELECT * FROM ". $view_name.";"; $length = pg_num_fields($result); //zwraca ilość kolumn while($row = pg_fetch_row($result)){ echo "<tr>"; for($i=0; $i<$length; $i++){ echo "<td>". $row[$i]. "</td>";

12 echo "</tr>"; echo "</tr>"; echo "</table>"; function personal_list_view($view_name, $pers_id){ // wyświetla tabelarycznie $query= "SELECT column_name FROM information_schema.columns WHERE table_name = '". $view_name. "'"; echo "<table class='perslistview'>"; echo "<tr>"; while($row = pg_fetch_array($result)){ extract($row); echo "<th>". $column_name. "</th>"; echo "</tr>"; $query = "SELECT * FROM ". $view_name." WHERE user_id=". $pers_id. ";"; $length = pg_num_fields($result); //zwraca ilość kolumn while($row = pg_fetch_row($result)){ echo "<tr>"; for($i=0; $i<$length; $i++){ echo "<td>". $row[$i]. "</td>"; echo "</tr>"; echo "</table>"; function view_without_heading($view_name){ // wyświetla tabelarycznie $query = "SELECT * FROM ". $view_name.";"; $length = pg_num_fields($result); //zwraca ilość kolumn while($row = pg_fetch_row($result)){ echo "<tr>"; for($i=0; $i<$length; $i++){ echo "<td>". $row[$i]. "</td>"; echo "</tr>"; echo "</tr>"; echo "</table>"; function personal_view_without_heading($view_name, $pers_id){ // wyświetla tabelarycznie $query = "SELECT * FROM ". $view_name. " WHERE user_id=". $pers_id. ";"; $length = pg_num_fields($result); //zwraca ilość kolumn while($row = pg_fetch_row($result)){ echo "<tr>"; for($i=0; $i<$length; $i++){ echo "<td>". $row[$i]. "</td>";

13 echo "</tr>"; echo "</tr>"; echo "</table>"; "utf-8";.val{ text-align:right;.col1{ width: 100px;.coltext{ width: 150px; table.center td{ text-align:center; td, th { border-width:0px; border-color: #000; border-style: solid; padding-left:5px; padding-right: 5px; height:28px; width: 120px; text-align:right; th{ background-color:#bbb; text-align:center; tr:nth-child(odd) { background-color:#eee; input { text-align:right; width:120px; input.submit { width:70px; text-align:center; td.unit{ width:120px; text-align:left;

14 input.text{ width: 140px; text-align:left;.center{ text-align: center;.add td { border-color:#999; color:#999; nav span{ padding:10px; nav{ padding:10px; button { background-color:#f5f5f5; -moz-border-radius:1px; -webkit-border-radius:1px; border-radius:1px; border:1px solid #000000; display:inline-block; cursor:pointer; color:#000; font-family:serif; font-size:15px; padding:2px 10px; text-decoration:none; button:hover { background-color:#fff; button:active { position:relative; top:1px;.date button{ display: none;.date:hover button{ display:inline;.date:hover span{ display:none; header{ text-align: right; table.perslistview tr td:first-child, table.perslistview tr th:first-child { display: none;

15 .info{ text-align:center; color:#fff; font-weight:bold; font-size:18px; padding:3px; background-color:#fc0;.okinfo{ background-color:#090;.badinfo{ background-color:#f00;

16 ///////////////////////////////////SQL////////////////////////////////////////// CREATE TABLE products ( product_id SERIAL, type_id INTEGER, name VARCHAR(50), protein NUMERIC(4,1), carb NUMERIC(4,1), fat NUMERIC(4,1) ); CREATE TABLE defaults ( product_id INTEGER, value NUMERIC(10,3), price NUMERIC(10,2), item_size NUMERIC(10,3) ); CREATE TABLE types ( type_id SERIAL, type_name VARCHAR(40), type_descr VARCHAR(500) ); CREATE TABLE dates ( product_id INTEGER, user_id INTEGER, zero_date DATE, interval INTEGER, interval_min INTEGER, interval_max INTEGER ); CREATE TABLE users ( user_id SERIAL, user_name VARCHAR(30), user_pass VARCHAR(50), user_mail VARCHAR(50) ); CREATE TABLE shopping_list ( purchase_id SERIAL, purchase_date DATE, user_id INTEGER, product_id INTEGER, value NUMERIC(10,3), price NUMERIC(10,2) ); ALTER TABLE dates ALTER COLUMN product_id SET NOT NULL; ALTER TABLE dates ALTER COLUMN zero_date SET NOT NULL; ALTER TABLE dates ALTER COLUMN interval SET NOT NULL; ALTER TABLE dates ALTER COLUMN interval_min SET NOT NULL; ALTER TABLE dates ALTER COLUMN interval_max SET NOT NULL; ALTER TABLE defaults ALTER COLUMN product_id SET NOT NULL; ALTER TABLE defaults ALTER COLUMN value SET NOT NULL; ALTER TABLE defaults ALTER COLUMN price SET NOT NULL;

17 ALTER TABLE shopping_list ALTER COLUMN purchase_id SET NOT NULL; ALTER TABLE shopping_list ALTER COLUMN product_id SET NOT NULL; ALTER TABLE shopping_list ALTER COLUMN user_id SET NOT NULL; ALTER TABLE shopping_list ALTER COLUMN purchase_date SET NOT NULL; ALTER TABLE shopping_list ALTER COLUMN value SET NOT NULL; ALTER TABLE shopping_list ALTER COLUMN price SET NOT NULL; ALTER TABLE types ALTER COLUMN type_id SET NOT NULL; ALTER TABLE types ALTER COLUMN type_name SET NOT NULL; ALTER TABLE users ALTER COLUMN user_id SET NOT NULL; ALTER TABLE users ALTER COLUMN user_name SET NOT NULL; ALTER TABLE users ALTER COLUMN user_pass SET NOT NULL; ALTER TABLE users ALTER COLUMN user_mail SET NOT NULL; ALTER TABLE products ALTER COLUMN product_id SET NOT NULL; ALTER TABLE products ALTER COLUMN type_id SET NOT NULL; ALTER TABLE products ALTER COLUMN name SET NOT NULL; ALTER TABLE products ALTER COLUMN protein SET NOT NULL; ALTER TABLE products ALTER COLUMN carb SET NOT NULL; ALTER TABLE products ALTER COLUMN fat SET NOT NULL; ALTER TABLE types ADD PRIMARY KEY (type_id); ALTER TABLE products ADD PRIMARY KEY (product_id); ALTER TABLE users ADD PRIMARY KEY (user_id); ALTER TABLE dates ADD PRIMARY KEY (product_id, user_id); ALTER TABLE shopping_list ADD PRIMARY KEY (purchase_id); ALTER TABLE products ADD FOREIGN KEY (type_id) REFERENCES types(type_id) ON UPDATE CASCADE ON DELETE RESTRICT; ALTER TABLE defaults ADD FOREIGN KEY (product_id) REFERENCES products(product_id)on UPDATE CASCADE ON DELETE CASCADE; ALTER TABLE dates ADD FOREIGN KEY (product_id) REFERENCES products(product_id) ON UPDATE CASCADE ON DELETE RESTRICT; ALTER TABLE dates ADD FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE; ALTER TABLE shopping_list ADD FOREIGN KEY (product_id) REFERENCES products(product_id) ON UPDATE CASCADE ON DELETE RESTRICT; ALTER TABLE shopping_list ADD FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE RESTRICT; ALTER TABLE types ADD UNIQUE (type_name); ALTER TABLE products ADD UNIQUE (name); ALTER TABLE defaults ADD UNIQUE (product_id); ALTER TABLE dates ADD UNIQUE (user_id, product_id); ALTER TABLE users ADD UNIQUE (user_name); ALTER TABLE users ADD UNIQUE (user_mail); ALTER TABLE dates ALTER COLUMN zero_date SET DEFAULT current_date; ALTER TABLE dates ADD CHECK (interval BETWEEN interval_min AND interval_max); ALTER TABLE dates ADD CHECK (interval_min>0 AND interval_min<=interval_max); ALTER TABLE dates ADD CHECK (zero_date<=current_date); ALTER TABLE products ADD CHECK (protein+fat+carb<=100); ALTER TABLE shopping_list ADD CHECK (purchase_date<=current_date); INSERT INTO types(type_id, type_name, type_descr) VALUES (1, 'warzywa', 'Należy sporzywać pięć porcji warzyw dziennie'), (2, 'owoce', 'Należy sporzywać 2-3 porcje owoców dziennie'),

18 (3, 'bobowate/mięso', 'Jedna porcja mięsa lub bobowatych (bób, cieciorka, groch, fasola, soczewica) dziennie wystarczy'), (4, 'oleje', 'Jedna porcja olejów dziennie. Np. półtora łyżki masła'), (5, 'orzechy', 'Garść orzechów jakichkolwiek dziennie'), (6, 'nabiał', 'Dwie porcje nabiału na dzień'), (7, 'produkty zbożowe', 'Do każdego posiłku, czyli 5 porcji dziennie. Zaliczają się tu wszelkie kasze, chleb, ziemniaki, ryż.'), (8, 'suszone owoce', 'Garść dziennie.'); INSERT INTO products(product_id,type_id,name,protein,carb,fat) VALUES (1,7,'amarantus',14.5,66.2,6.5), (2,2,'banan',1,23.5,0.3), (3,3,'biała fasola',21.4,61.6,1.6), (4,1,'burak',1.8,9.5,0.1), (5,3,'cieciorka',19.3,60.6,6), (6,3,'groch',23.8,60.2,1.4), (7,3,'groszek',4.9,15.8,0.2), (8,2,'jabłko',0.3,13.8,0.2), (9,3,'jajo',12.5,0.6,9.7), (10,6,'jogurt naturalny',4.3,6.2,2), (11,3,'kakao',27,16,10), (12,1,'kapusta biała',1.7,7.4,0.2), (13,1,'kapusta kiszona',1.1,3.4,0.2), (14,7,'kasza gryczana',12.6,69.3,3.1), (15,7,'kasza jaglana',10.5,71.6,2.9), (16,7,'kasza jęczmienna',6.9,68.8,2.2), (17,1,'marchew',1,8.7,0.2), (18,6,'maślanka',3.4,4.5,1.5), (19,7,'mąka żytnia 2000',8.5,74,2.2), (20,7,'mąka żytnia 720',6.5,77,1.7), (21,5,'migdały',20,20.5,42), (22,6,'mleko 3,2%',3.2,4.7,3.2), (23,5,'nasiona dyni',24.5,18,45.8), (24,5,'orzechy laskowe',15,17,61), (25,5,'orzechy włoskie',16,18,60.3), (26,5,'orzeszki ziemne',26,14,50), (27,3,'otręby pszenne',16.5,20.1,4.7), (28,1,'papryka',1.3,6.6,0.5), (29,3,'pieczarki',2.7,2.6,0.4), (30,7,'płatki owsiane',11.9,69.3,7.2), (31,8,'rodzynki',2.3,71.2,0.5), (32,7,'ryż brązowy',7.1,76.8,1.9), (33,1,'rzodkiewka',1,4.4,0.2), (34,1,'seler korzeniowy',1.6,7.7,0.3), (35,6,'ser żółty',24.9,27.4,2.2), (36,6,'serek wiejski',11,2,5), (37,5,'sezam',23.2,2.1,59.9), (38,5,'siemie lniane',19.8,1,41.9), (39,5,'słonecznik',24.4,24.6,43.7), (40,3,'soczewica czerwona',25.4,48.6,3), (41,3,'soczewica zielona',24.2,60.8,0.6), (42,3,'soja',34.3,17,19.6), (43,8,'suszone śliwki',3.5,68.9,1.2), (44,6,'twaróg półtłusty',18.7,3.7,4.7), (45,3,'wątróbka z indyka',17.8,2.3,16.4), (46,3,'wątróbka z kury',19.1,0.6,6.3), (47,3,'zarodki pszenne',27.5,31.5,9.4), (48,7,'ziemniak',1.9,18.3,0.1);

19 INSERT INTO defaults(product_id,value,price,item_size) VALUES (1,0.5,7,0.4), (2,1,5,0.12), (3,1,10,0.4), (4,1,1.5,0.1), (5,1,8,0.4), (6,1,4,0.4), (7,0.2,2,0.24), (8,1,2.5,0.18), (9,0.5,7,0.5), (10,0.2,1.5,0.2), (11,0.2,5,0.2), (12,1,3,4.5), (13,1,2.5,0.3), (14,0.4,4,0.4), (15,1,7,0.4), (16,0.4,2.5,0.4), (17,1,2,0.05), (18,1,3.5,1), (19,0.9,2.5,1), (20,0.9,2.5,1), (21,1,35,0.2), (22,1,3.01,1), (23,1,35,0.2), (24,1,35,0.2), (25,1,40,0.2), (26,1,10,0.2), (27,0.15,1.3,0.15), (28,1,5,0.15), (29,1,10,0.02), (30,0.5,2.2,0.5), (31,1,15,0.2), (32,0.4,3.5,0.4), (33,0.1,1.5,0.115), (34,1,3.5,0.3), (35,1,20,0.4), (36,0.2,2.5,0.2), (37,0.3,5.4,0.2), (38,0.4,3.35,0.35), (39,1,20,0.2), (40,1,10,0.4), (41,1,7,0.4), (42,0.35,2.8,0.4), (43,1,20,0.2), (44,0.2,3.5,0.2), (45,1,10,0.3), (46,1,7,0.3), (47,0.15,1.7,0.15), (48,1,1.5,1); INSERT INTO users(user_id, user_name, user_pass, user_mail) VALUES (1, 'testuser', 'pass', (2, 'another', 'pass', INSERT INTO dates(product_id,user_id,zero_date,interval,interval_min,interval_max) VALUES (1,1,' ',398,25,399), (2,1,' ',30,7,30), (3,1,' ',380,1,400),

20 (4,1,' ',400,1,400), (5,1,' ',400,1,400), (6,1,' ',200,1,200), (7,1,' ',384,1,400), (8,1,' ',30,1,30), (9,1,' ',19,10,20), (10,1,' ',14,7,14), (11,1,' ',20,7,20), (12,1,' ',33,15,200), (13,1,' ',35,1,40), (14,1,' ',99,30,100), (15,1,' ',8,1,400), (16,1,' ',355,1,400), (17,1,' ',14,5,15), (18,1,' ',368,1,400), (19,1,' ',15,7,20), (20,1,' ',9,7,20), (21,1,' ',492,50,500), (22,1,' ',3,2,3), (23,1,' ',386,1,400), (24,1,' ',398,1,400), (25,1,' ',400,1,400), (26,1,' ',86,1,400), (27,1,' ',20,5,20), (28,1,' ',242,1,400), (29,1,' ',100,10,100), (30,1,' ',7,4,7), (31,1,' ',394,1,400), (32,1,' ',131,1,200), (33,1,' ',392,1,400), (34,1,' ',400,1,400), (35,1,' ',399,1,400), (36,1,' ',106,1,400), (37,1,' ',400,1,400), (38,1,' ',50,10,50), (39,1,' ',396,1,400), (40,1,' ',400,1,400), (41,1,' ',169,1,400), (42,1,' ',396,1,400), (43,1,' ',58,1,400), (44,1,' ',40,1,40), (45,1,' ',39,10,40), (46,1,' ',40,10,40), (47,1,' ',46,10,50), (48,1,' ',395,1,400), (1,2,' ',398,25,399), (2,2,' ',30,7,30); CREATE OR REPLACE FUNCTION energy(id INTEGER) RETURNS NUMERIC(4,1) AS $$ DECLARE protein NUMERIC(4,1); carb NUMERIC(4,1); fat NUMERIC(4,1); BEGIN SELECT p.protein INTO protein FROM products p WHERE p.product_id=id; SELECT p.carb INTO carb FROM products p WHERE p.product_id=id; SELECT p.fat INTO fat FROM products p WHERE p.product_id=id; RETURN protein*4 + carb*4 + fat*9; END;

21 $$ LANGUAGE 'plpgsql'; CREATE OR REPLACE FUNCTION sum_cost(id INTEGER) RETURNS DECIMAL(10,2) AS $$ DECLARE res DECIMAL(10,2); BEGIN SELECT sum(sl.value) INTO res FROM shopping_list sl WHERE sl.product_id = id; IF res IS NOT NULL THEN RETURN res; ELSE RETURN 0; END IF; END; $$ LANGUAGE 'plpgsql'; CREATE OR REPLACE FUNCTION days_passed(day DATE) RETURNS INTEGER AS $$ DECLARE gap INTEGER; BEGIN SELECT (current_date-day) INTO gap; RETURN gap; END; $$ LANGUAGE 'plpgsql'; CREATE OR REPLACE FUNCTION buyable(id INTEGER) RETURNS DECIMAL(10,3) AS $$ DECLARE res DECIMAL(10,3); sum DECIMAL(10,2); gap INTEGER; inter INTEGER; zdate DATE; val DECIMAL(10,2); BEGIN SELECT sum_cost(id) INTO sum; SELECT zero_date INTO zdate FROM dates WHERE product_id = id; SELECT days_passed(zdate) INTO gap; SELECT interval INTO inter FROM dates WHERE product_id = id; SELECT value INTO val FROM defaults WHERE product_id = id; RETURN round((((gap*val)/inter) - sum), 3); END; $$ LANGUAGE 'plpgsql'; CREATE OR REPLACE VIEW product_data AS SELECT p.name AS "nazwa", t.type_name AS "rodzaj", energy(p.product_id) ' kcal' AS "energia", p.protein ' g' AS "białko", p.carb ' g' AS "węglowodany", p.fat ' g' AS "tłuszcze" FROM products p, types t WHERE t.type_id=p.type_id; CREATE OR REPLACE VIEW to_buy_list AS SELECT p.product_id,

22 FROM p.name AS "nazwa", buyable(p.product_id) ' kg' AS "stan", '+' round(d.value/da.interval, 2) ' kg' AS "przyrost", d.item_size ' kg' AS "w paczce", d.price ' zł' AS "domyślna cena", d.value ' kg' AS "domyślna ilość", da.interval ' dni' AS "interwał", da.interval_min ' dni' AS "interwał min.", da.interval_max ' dni' AS "interwał maks.", da.zero_date AS "data pocz." products p, defaults d, dates da WHERE p.product_id=d.product_id AND p.product_id=da.product_id ORDER BY buyable(p.product_id) DESC; CREATE OR REPLACE VIEW personal_to_buy_list AS SELECT u.user_id, p.name AS "nazwa", buyable(p.product_id) ' kg' AS "stan", '+' round(d.value/da.interval, 2) 'kg' AS "przyrost", d.item_size ' kg' AS "w paczce", d.price ' zł' AS "domyślna cena", d.value ' kg' AS "domyślna ilość", da.interval ' dni' AS "interwał", da.interval_min ' dni' AS "interwał min.", da.interval_max ' dni' AS "interwał maks.", da.zero_date AS "data pocz." FROM products p, defaults d, dates da, users u WHERE p.product_id=d.product_id AND p.product_id=da.product_id AND u.user_id=da.user_id ORDER BY buyable(p.product_id) DESC; CREATE OR REPLACE VIEW daily_stats AS SELECT da.user_id, round(sum(d.price/da.interval), 2) ' zł' AS "wydatki", round(sum((d.value/da.interval)*10*energy(p.product_id)), 0) ' kcal' AS "energia", round(sum((d.value/da.interval)*10*p.protein), 0) ' g' AS "białko", round(sum((d.value/da.interval)*10*p.carb), 0) ' g' AS "węglowodany", round(sum((d.value/da.interval)*10*p.fat), 0) ' g' AS "tłuszcze" FROM products p, defaults d, dates da

23 WHERE p.product_id = d.product_id AND p.product_id = da.product_id GROUP BY da.user_id; CREATE OR REPLACE VIEW daily_stats_clean AS SELECT da.user_id, round(sum(d.price/da.interval), 2) AS "wydatki", round(sum((d.value/da.interval)*10*energy(p.product_id)), 0) AS "energia", round(sum((d.value/da.interval)*10*p.protein), 0) AS "białko", round(sum((d.value/da.interval)*10*p.carb), 0) AS "węglowodany", round(sum((d.value/da.interval)*10*p.fat), 0) AS "tłuszcze" FROM products p, defaults d, dates da WHERE p.product_id = d.product_id AND p.product_id = da.product_id GROUP BY da.user_id; CREATE OR REPLACE VIEW percentage AS SELECT user_id, round((białko/energia)*4*100,0) '%' AS "energia z białka", round((węglowodany/energia)*4*100,0) '%' AS "energia z węglowodanów", round((tłuszcze/energia)*9*100,0) '%' AS "energia z tłuszczy" FROM daily_stats_clean; CREATE OR REPLACE VIEW percentage_clean AS SELECT user_id, round(białko*4/energia, 2) AS "prot_per", round(węglowodany*4/energia, 2) AS "carb_per", round(tłuszcze*9/energia, 2) AS "fat_per" FROM daily_stats_clean; CREATE OR REPLACE VIEW bought AS SELECT sl.user_id, p.name, sl.purchase_date, sl.value, sl.price FROM shopping_list sl INNER JOIN products p USING (product_id) ORDER BY purchase_date DESC;

24 Rys 1. Rejestracja użytkownika Rys 2. Logownie Rys 3. Dodawanie zakupu.

25 Rys 5. Generowanie listy jadłospisu. Rys 4. Edytownie produktu

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL, Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających

Bardziej szczegółowo

Zajęcia 13 wykorzystanie MySQL w PHP cz. 2

Zajęcia 13 wykorzystanie MySQL w PHP cz. 2 Zajęcia 13 wykorzystanie MySQL w PHP cz. 2 Przykład 1 wyświetlanie danych [ Plik wyswietlanie.php ] $polaczenie = mysql_connect("localhost", "root", "") or die("nie mozna polaczyc z baza!"); mysql_select_db("test",

Bardziej szczegółowo

BAZA DANYCH SIECI HOTELI

BAZA DANYCH SIECI HOTELI Paulina Gogół s241906 BAZA DANYCH SIECI HOTELI Baza jest częścią systemu zarządzającego pewną siecią hoteli. Składa się z tabeli powiązanych ze sobą różnymi relacjami. Służy ona lepszemu zorganizowaniu

Bardziej szczegółowo

Hurtownia Świętego Mikołaja projekt bazy danych

Hurtownia Świętego Mikołaja projekt bazy danych Aleksandra Kobusińska nr indeksu: 218366 Hurtownia Świętego Mikołaja projekt bazy danych Zaprezentowana poniżej baza jest częścią większego projektu bazy danych wykorzystywanej w krajowych oddziałach wiosek

Bardziej szczegółowo

Projekt bazy danych. Schemat bazy danych. Opis bazy danych

Projekt bazy danych. Schemat bazy danych. Opis bazy danych Autorzy: Piotr Słoma nr indeksu: 233263 Joanna Kurzyńska nr indeksu: 233254 Agnieszka Szumicka nr indeksu: 233266 Projekt bazy danych Schemat bazy danych Opis bazy danych Nasz projekt przedstawia bazę

Bardziej szczegółowo

DIETA 2000 kcal DZIEŃ 1 lista składników na 4 porcje:

DIETA 2000 kcal DZIEŃ 1 lista składników na 4 porcje: DZIEŃ 1 filet z kurczaka 0,5 kg łosoś dzwonko 0,3 kg jogurt naturalny 400 ml mleko ser mozzarella light 80 g ser twarogowy 0,35 kg jajka 10 szt. kasza gryczana - 0,15 kg mąka pszenna 0,3 kg mąka żytnia

Bardziej szczegółowo

Baza danych hotel Maciej Gerus 258583

Baza danych hotel Maciej Gerus 258583 Baza danych hotel Maciej Gerus 258583 Baza ta składa się z 7 tabel (jak widać na rysunku) i pozwala wirtualnie zapisywać (oraz analizować) niektóre uproszczone elementy pracy przedsiębiorstwa oferującego

Bardziej szczegółowo

Monika Sychla 241858 Daniel Smolarek 241875. Projekt bazy danych

Monika Sychla 241858 Daniel Smolarek 241875. Projekt bazy danych Monika Sychla 241858 Daniel Smolarek 241875 Projekt bazy danych Naszym zadaniem było zaprojektowanie przykładowej bazy danych, w oparciu o zagadnienia jakie zostały wprowadzone w trakcie kursu z baz danych.

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł

Bardziej szczegółowo

Język SQL, zajęcia nr 1

Język SQL, zajęcia nr 1 Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze

Bardziej szczegółowo

TABUN_CMS. System zarządzania treścią dla dedykowanej grupy użytkowników. Tabun_CMS 2008 Marcin Biegun, Szymon Bąk

TABUN_CMS. System zarządzania treścią dla dedykowanej grupy użytkowników. Tabun_CMS 2008 Marcin Biegun, Szymon Bąk TABUN_CMS System zarządzania treścią dla dedykowanej grupy użytkowników Spis treści TABUN_CMS...1 Informacje wstępne...3 Cele wdrożenia systemu...3 Wykorzystane technologie...3 Ocena działania systemu...3

Bardziej szczegółowo

Bartosz Jachnik - Kino

Bartosz Jachnik - Kino Bartosz Jachnik - Kino I. Opis bazy Prezentowana baza danych stworzona została na potrzeby prowadzenia kina. Zawiera ona 8 tabel, które opisują filmy grane w danym okresie w kinie, wraz ze szczegółowym

Bardziej szczegółowo

AKADEMIA SKUTECZNEJ SAMOKONTROLI W CUKRZYCY

AKADEMIA SKUTECZNEJ SAMOKONTROLI W CUKRZYCY AKADEMIA SKUTECZNEJ SAMOKONTROLI W CUKRZYCY Dieta dla osób dieta 1200 kcal chorujących na dieta 1500 kcal cukrzycę typu 2* dieta 1800 kcal Zdrowe żywienie w cukrzycy Lista wymienników 1 porcji produktów**

Bardziej szczegółowo

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym ilu jest na naszej hipotetycznej

Bardziej szczegółowo

BAZY DANYCH PROJEKT. Tomasz Osmelak, 258441 Wrocław, 26.01.2014 Instytut Matematyczny Wydział Matematyki I Informatyki Uniwersytet Wrocławski

BAZY DANYCH PROJEKT. Tomasz Osmelak, 258441 Wrocław, 26.01.2014 Instytut Matematyczny Wydział Matematyki I Informatyki Uniwersytet Wrocławski Tomasz Osmelak, 258441 Wrocław, 26.01.2014 Instytut Matematyczny Wydział Matematyki I Informatyki Uniwersytet Wrocławski BAZY DANYCH PROJEKT Sprawdzający: dr hab. Robert Stańczy 1 Spis treści: 1. Schemat

Bardziej szczegółowo

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika

Bardziej szczegółowo

Lista zamienników. 140g cukinii. 80g dyni. 100g bakłażana. 70g kabaczka. 80g papryki czerwonej. 50g papryki czerwonej. 100g pomidora.

Lista zamienników. 140g cukinii. 80g dyni. 100g bakłażana. 70g kabaczka. 80g papryki czerwonej. 50g papryki czerwonej. 100g pomidora. Lista zamienników 140g cukinii 100g bakłażana 80g dyni 70g kabaczka 80g papryki czerwonej 100g ogórka 50g papryki czerwonej 100g pomidora 100g rzodkiewek 100g dyni 200g cukinii 130g kalafiora 100g brokuła

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 6 12. Prosta obsługa Bazy w PHP

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 6 12. Prosta obsługa Bazy w PHP Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 6 12. Prosta obsługa Bazy w PHP 12.1 Wprowadź i zanalizuj mechanizm działania prostej bazy danych na poniŝszym przykładzie ksiąŝki telefonicznej

Bardziej szczegółowo

Systemy internetowe. Wykład 4 mysql. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Systemy internetowe. Wykład 4 mysql. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 4 mysql MySQL - wstęp SZBD: komercyjne: Microsoft SQL Server, Oracle, DB2... darmowe: MySQL, PostgreSQL, Firebird... MySQL darmowy (użytek niekomercyjny) Wady: niska wydajność

Bardziej szczegółowo

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Przetwarzanie i organizowanie danych : bazy danych Nr ćwiczenia 10 Temat Aplikacje

Bardziej szczegółowo

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)

Bardziej szczegółowo

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw

Bardziej szczegółowo

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Historia i standardy Podstawy relacyjności Typy danych DDL tabele, widoki, sekwencje zmiana struktury DML DQL Podstawy, złączenia,

Bardziej szczegółowo

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP Zad. 1 Dla każdego zamówienia wyznaczyć jego wartość. Należy podać numer zamówienia oraz wartość. select z.id_zamowienia, sum(ilosc*cena) as wartosc

Bardziej szczegółowo

Dzień I * Ilość w gramach lub mililitrach. Ilość w miarach domowych

Dzień I * Ilość w gramach lub mililitrach. Ilość w miarach domowych DIETA 1200 kcal Dzień I * miarach I śniadanie 290 Musli z rodzynkami i orzechami 2 łyżki 30 g 112 Mleko 0.5 % tłuszczu 1 szklanka 250 ml 97 Grejpfrut 1 szt., średni 350 g 81 II śniadanie 251 Chleb żytni

Bardziej szczegółowo

SQL :: Data Definition Language

SQL :: Data Definition Language SQL :: Data Definition Language 1. Zaproponuj wydajną strukturę danych tabela) do przechowywania macierzy o dowolnych wymiarach w bazie danych. Propozycja struktury powinna zostać zapisana z wykorzystaniem

Bardziej szczegółowo

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się

Bardziej szczegółowo

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście. Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN

Bardziej szczegółowo

Bazy danych 10. SQL Widoki

Bazy danych 10. SQL Widoki Bazy danych 10. SQL Widoki P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela

Bardziej szczegółowo

Przykład integracji kalkulatora mbank RATY na platformie IAI

Przykład integracji kalkulatora mbank RATY na platformie IAI Przykład integracji kalkulatora mbank RATY na platformie IAI 1. Moderacja - > Dodatki HTML i JavaScript 1.1 Klikamy na przycisk nowy dodatek Wpisujemy w pole Tytuł dodatku nazwę CSS_mRaty. Następnie ustawiamy

Bardziej szczegółowo

Piramida zdrowego żywienia w cukrzycy

Piramida zdrowego żywienia w cukrzycy Piramida zdrowego żywienia w cukrzycy Wysiłek fizyczny codziennie ok. 30-60 minut Codzienna aktywność fizyczna wpływa na dobre samopoczucie i lepsze funkcjonowanie organizmu. Każdy wysiłek fizyczny jest

Bardziej szczegółowo

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym. Modele - konceptualne reprezentacja obiektów w

Bardziej szczegółowo

Lista zakupów na 7 dni diety

Lista zakupów na 7 dni diety Lista zakupów na 7 dni diety bakalie 1 Orzechy włoskie 54 2 Wiórki kokosowe 10 jaja 1 Jaja kurze całe ekologiczne 381 nabiał 1 Jogurt naturalny, 2% tłuszczu 800 2 Kefir, 2% tłuszczu 600 3 Maślanka spożywcza,

Bardziej szczegółowo

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk Wstęp wprowadzający do laboratorium 2 mgr inż. Rafał Grycuk Plan prezentacji 1. Czym jest T-SQL i czym się różni od standardu SQL 2. Typy zapytań 3. Zapytanie typu SELECT 4. Słowo o indeksach T-SQL (1)

Bardziej szczegółowo

Podstawy żywienia w sporcie. Aneta Sojak

Podstawy żywienia w sporcie. Aneta Sojak Podstawy żywienia w sporcie Aneta Sojak Właściwe żywienie i nawodnienie = Osiągnięcie sukcesu Energia do pracy mięśni Adaptacja do wysiłku Skuteczna regeneracja (zmniejszenie procesów katabolicznych) Zły

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność

Bardziej szczegółowo

11. Scenariusz lekcji dla gimnazjów i szkół ponadgimnazjalnych

11. Scenariusz lekcji dla gimnazjów i szkół ponadgimnazjalnych 11. Scenariusz lekcji dla gimnazjów i szkół ponadgimnazjalnych Temat: Samodzielna ocena swojego żywienia i aktywności fizycznej. Cele: zapoznanie ucznia z praktycznymi aspektami układania prawidłowo zbilansowanej

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z

Bardziej szczegółowo

O F E R T A A S O R T Y M E N T O W A

O F E R T A A S O R T Y M E N T O W A O F E R T A A S O R T Y M E N T O W A KASZE Kasza gryczana nieprażona : 300 g, 5 kg Kasza gryczana prażona : 500 g, 1 kg, 5 kg Kasza jaglana : 400 g, 1 kg, 5 kg Kasza jęczmienna koszalińska średniorozdrobniona:

Bardziej szczegółowo

Projekt strony internetowej firmy organizującej przyjęcia

Projekt strony internetowej firmy organizującej przyjęcia Politechnika Śląska Gliwice Wydział Automatyki, Elektroniki i Informatyki Rok akademicki 2010/2011 Kierunek: Automatyka i Robotyka, semestr 5 Semestr zimowy Projekt strony internetowej firmy organizującej

Bardziej szczegółowo

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych MySQL studia zaoczne II stopnia, sem. I Plan wykładu 1. MySQL: funkcje, procedury, wyzwalacze 2. HTML : tworzenie

Bardziej szczegółowo

Wartość odżywcza zestawu

Wartość odżywcza zestawu Wartość odżywcza zestawu Energia kcal 605 Białko ogółem g 29,7 Tłuszcz ogółem g 20,0 Węglowodany ogółem g 82,4 Wapń mg 287 Żelazo mg 2,6 Witamina A - ekwiwalent retinolu Ilg 126 Witamina C mg 62,1 Kwas

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

Aspekty aktywne baz danych

Aspekty aktywne baz danych Aspekty aktywne baz danych Aktywne aspekty baz danych Baza danych powinna zapewniać pewne własności i niezmienniki; Własności te powinny mogą być zapisane do bazy danych, a baza danych powinna zapewniać

Bardziej szczegółowo

ZASADY PRAWIDŁOWEGO ŻYWIENIA DZIECI I MŁODZIEŻY ORAZ WSKAZÓWKI DOTYCZĄCE ZDROWEGO STYLU ŻYCIA Gimnazja

ZASADY PRAWIDŁOWEGO ŻYWIENIA DZIECI I MŁODZIEŻY ORAZ WSKAZÓWKI DOTYCZĄCE ZDROWEGO STYLU ŻYCIA Gimnazja ZASADY PRAWIDŁOWEGO ŻYWIENIA DZIECI I MŁODZIEŻY ORAZ WSKAZÓWKI DOTYCZĄCE ZDROWEGO STYLU ŻYCIA Gimnazja Zestaw 1 Krupnik Waga 1 porcji - 400 g I porcja 10 porcji g kg Kasza jęczmienna perłowa 15,0 0,150

Bardziej szczegółowo

Aplikacje WWW - laboratorium

Aplikacje WWW - laboratorium Aplikacje WWW - laboratorium PHP + bazy danych Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Ćwiczenie prezentuje podstawowe aspekty poprawnego programowania

Bardziej szczegółowo

SQL 4 Structured Query Lenguage

SQL 4 Structured Query Lenguage Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...

Bardziej szczegółowo

Baza danych Ogrodu Zoologicznego

Baza danych Ogrodu Zoologicznego Baza danych Ogrodu Zoologicznego Sprawozdanie z realizacji projektu Marcin Gwózdek Spis treści I.Założenia projektowe...3 II.Diagram ERD...4 III.Diagram RSMD...5 IV.Skrypty SQL...7 1.Zoo.tab...7 2.Zoo.ind...9

Bardziej szczegółowo

HIPER- TRIGLICERYDEMIA

HIPER- TRIGLICERYDEMIA HIPER- TRIGLICERYDEMIA Produkty zalecane - dozwolone Pieczywo: czerstwe, razowe, żytnie, chrupkie oraz pumpernikiel Kasze: gryczana oraz jęczmienna, płatki owsiane, ryż dziki i brązowy mleko niskotłuszczowe,

Bardziej szczegółowo

Błonnik jako cudowny środek na odchudzanie?

Błonnik jako cudowny środek na odchudzanie? Błonnik jako cudowny środek na odchudzanie? Jednym z najbardziej skutecznych sposobów, aby stracić nadprogramowe kilogramy, to kontrolować własny apetyt. Łatwo powiedzieć, ciężej wykonać! Jednak gdy poznamy

Bardziej szczegółowo

Zdaniem amerykańskich specjalistów białko nie stanowi problemu w dietach wegetariańskich, ponieważ obecnie spożywamy zbyt duże ilości protein.

Zdaniem amerykańskich specjalistów białko nie stanowi problemu w dietach wegetariańskich, ponieważ obecnie spożywamy zbyt duże ilości protein. Dieta wegetariańska Bardzo często powielane są nieprawdziwe informacje na temat diety wegetariańskiej na przykład w kontekście białka. W opinii nie tylko specjalistów z zakresu dietetyki ale również lekarzy

Bardziej szczegółowo

SQL> startup pfile=./admin/pfile/initdbx.ora. SQL> create spfile from pfile='$home/admin/pfile/initdbx.ora' create user bolek identified by bolek;

SQL> startup pfile=./admin/pfile/initdbx.ora. SQL> create spfile from pfile='$home/admin/pfile/initdbx.ora' create user bolek identified by bolek; Administrowanie użytkownikami Ćwiczenia laboratoryjne (2) Przygotowanie środowiska 1. Przy pomocy programu Putty, połącz się z serwerem miner.cs.put.poznan.pl. Dla wygody otwórz dwie sesje w dwóch różnych

Bardziej szczegółowo

Zestaw 12. Ziemniaki gotowane Waga l porcji -150 g. 10 porcji kg. l porcja g. Ziemniaki Sól 210,0 2,100

Zestaw 12. Ziemniaki gotowane Waga l porcji -150 g. 10 porcji kg. l porcja g. Ziemniaki Sól 210,0 2,100 Zestaw 12 Zupa ogórkowa Waga 1 porcji - 300 g I porcja 10 porcji Ogórek kwaszony 30,0 0,300 Marchew 18,7 0,187 Pietruszka, korzeń 7,5 0,075 Por 7,5 0,075 Seler korzeniowy 3,7 0,037 Ziemniaki 75,0 0,750

Bardziej szczegółowo

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie

Bardziej szczegółowo

Dieta bezglutenowa Słodycze

Dieta bezglutenowa Słodycze Dieta bezglutenowa Słodycze Gluten mieszaninabiałekroślinnych,gluteniny(jednej z glutelin)igliadyny, występująca w ziarnach niektórych zbóż, np. pszenicy, żyta i jęczmienia Produkty bezglutenowe Ryż Kukurydza

Bardziej szczegółowo

Plan dietetyczny dla Imię i Nazwisko

Plan dietetyczny dla Imię i Nazwisko Plan dietetyczny dla Imię i Nazwisko Dieta redukcyjna 1350 kcal Dietetyk Agnieszka Besz Poradnia Dietetyczna StudioDiety www.studio-diety.pl Dzień Śniadanie II Śniadanie Obiad Przekąska Kolacja Sałatka

Bardziej szczegółowo

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678'); polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {

Bardziej szczegółowo

Krupnik Waga 1 porcji - 250 g

Krupnik Waga 1 porcji - 250 g Krupnik Waga 1 porcji - 250 g Kasza jęczmienna perłowa 9,5 0,095 Marchew 15,5 0,155 Pietruszka, korzeń 6,5 0,065 Por 6,5 0,065 Seler korzeniowy 3,0 0,030 Ziemniaki 62,5 0,625 Margaryna 3,0 0,030 Ziele

Bardziej szczegółowo

PROGRAM ZAJĘĆ W RAMACH AKADEMII ZDROWEGO ŻYWIENIA. Opis. - praca z materiałami drukowanymi, - pogadanka, - dyskusja problemowa

PROGRAM ZAJĘĆ W RAMACH AKADEMII ZDROWEGO ŻYWIENIA. Opis. - praca z materiałami drukowanymi, - pogadanka, - dyskusja problemowa PROGRAM ZAJĘĆ W RAMACH AKADEMII ZDROWEGO ŻYWIENIA Uwaga: Dopuszcza się modyfikację kolejności zaplanowanych tematów. Kolejne zajęcia Temat główny - Liczba godzin Metody prowadzenia zajęć: Opis 1 PODSTAWOWE

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Zapytania SELECT Dr inż. Paweł Kasprowski pawel@kasprowski.pl Przykład HAVING Podaj liczebność zespołów dla których najstarszy pracownik urodził się po 1940 select idz, count(*) from prac p

Bardziej szczegółowo

7 00 L - karnityna + chrom + aminokwasy rozgałęzione, 7 30 I ŚNIADANIE, (głównie węglowodany złożone + owoce + warzywa):*

7 00 L - karnityna + chrom + aminokwasy rozgałęzione, 7 30 I ŚNIADANIE, (głównie węglowodany złożone + owoce + warzywa):* Przykładowe jadłospisy na redukcję masy ciała 1. Przykładowy jadłospis na zrzucenie wagi (zalecenia ogólne, na podstawie wywiadu z zawodnikiem trójboju siłowego): CZĘŚĆ I 3 TYGODNIE: 7 00 L - karnityna

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie

Bardziej szczegółowo

Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20

Plan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20 Plan wykładu BAZY DANYCH II WYKŁAD 9 Dynamiczny SQL, NDS, EXECUTE IMMEDIATE, Pakiet DBMS_SQL, Obiekty w PL/SQL, Tworzenie, wywoływanie, dziedziczenie, etc. dr inż. Agnieszka Bołtuć Dynamiczny SQL Pozwala

Bardziej szczegółowo

Przykładowy jadłospis wprowadzany w stołówce szkolnej Zespołu Szkół im. Jana Pawła II w Suchej Beskidzkiej od dnia 3 marca 2014 r.

Przykładowy jadłospis wprowadzany w stołówce szkolnej Zespołu Szkół im. Jana Pawła II w Suchej Beskidzkiej od dnia 3 marca 2014 r. Przykładowy jadłospis wprowadzany w stołówce szkolnej Zespołu Szkół im. Jana Pawła II w Suchej Beskidzkiej od dnia 3 marca 2014 r. Uwaga: dopuszcza się wprowadzanie modyfikacji uzasadnionych sezonowym

Bardziej szczegółowo

Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami

Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592 Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Spis treści Założenia Projektowe...1 Schemat Bazy Danych...1

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Podstawy relacyjnego modelu danych Dr inż. Paweł Kasprowski pawel@kasprowski.pl Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność

Bardziej szczegółowo

Poradnia Dietetyczna Dbam O Siebie. Wzdęcia, zaparcia, biegunki, brak. Jak często? Po jakich produktach?

Poradnia Dietetyczna Dbam O Siebie. Wzdęcia, zaparcia, biegunki, brak. Jak często? Po jakich produktach? Poradnia Dietetyczna Dbam O Siebie Dane: Imię: Nazwisko: Data ur. Nr. Tel: E-mail: Wzrost: Waga: Obwód bioder: Obwód talii: Podstawowe Informacje: Miejsce pracy Godziny pracy Aktywność Fizyczna Aktualny

Bardziej szczegółowo

Internetowe bazy danych

Internetowe bazy danych Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 6 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Kontrola dostępu

Bardziej szczegółowo

Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)

Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa) Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.

Bardziej szczegółowo

Produkty zalecane - dozwolone Produkty przeciwwskazane Zalecenia

Produkty zalecane - dozwolone Produkty przeciwwskazane Zalecenia NADMIERNE BMI Produkty zalecane - dozwolone duża ilość warzyw owoce w niewielkiej ilości woda mineralna niegazowana chude mięso odłuszczone lub niskotłuszczowe produkty mleczne pieczywo pełnoziarniste

Bardziej szczegółowo

Aplikacje www laboratorium

Aplikacje www laboratorium Aplikacje www laboratorium Konfigurowanie zabezpieczeń w oparciu o JAAS w serwerze GlassFish Zabezpieczanie aplikacji webowych z wykorzystaniem JASS jest w podstawowych zastosowaniach procesem dwuetapowym.

Bardziej szczegółowo

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI SPIS TREŚCI 1.Dwie metody przekazu danych do serwera 2 2.Metoda GET przykład 3 3.Metoda POST przykład 4 4.Kiedy GET a kiedy POST 5 5.Szablony po co je stosować 7 6.Realizacja szablonu własną funkcją 8

Bardziej szczegółowo

Bazy danych dla producenta mebli tapicerowanych. Bartosz Janiak Marcin Sikora Wrocław 9.06.2015 r.

Bazy danych dla producenta mebli tapicerowanych. Bartosz Janiak Marcin Sikora Wrocław 9.06.2015 r. Bazy danych dla producenta mebli tapicerowanych Bartosz Janiak Marcin Sikora Wrocław 9.06.2015 r. Założenia Stworzyć system bazodanowy dla małej firmy produkującej meble tapicerowane. Projekt ma umożliwić

Bardziej szczegółowo

Dieta DASH i produkty lokalne jako żywieniowa profilaktyka nadciśnienia. Prof. dr hab. n. med. Danuta Pawłowska

Dieta DASH i produkty lokalne jako żywieniowa profilaktyka nadciśnienia. Prof. dr hab. n. med. Danuta Pawłowska Dieta DASH i produkty lokalne jako żywieniowa profilaktyka nadciśnienia Prof. dr hab. n. med. Danuta Pawłowska 20% 29% optymalne prawidłowe 21% 30% wysokie prawidłowe nadciśnienie Kategorie nadciśnienia

Bardziej szczegółowo

Wybieram zdrowie i zdrowe odżywianie

Wybieram zdrowie i zdrowe odżywianie Wybieram zdrowie i zdrowe odżywianie Doktorze Zdrówko, co to znaczy być zdrowym? Być zdrowym, to nie tylko nie chorować, ale też czuć się dobrze, być radosnym i sprawnym fizycznie. Czy wiesz, co pomaga

Bardziej szczegółowo

Projektowanie systemów baz danych

Projektowanie systemów baz danych Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do

Bardziej szczegółowo

SQL w praktyce. Miłej i owocnej nauki!!!

SQL w praktyce. Miłej i owocnej nauki!!! SQL w praktyce Niniejsza praca objęta jest prawami autorskimi. Nielegalne jest kopiowanie żadnej częsci tej pracy w żadnej postaci. Niezgodne z prawem tym bardziej jest udostępnianie innym tej pracy odpłatnie

Bardziej szczegółowo

JADŁOSPIS DLA DZIECKA

JADŁOSPIS DLA DZIECKA JADŁOSPIS DLA DZIECKA Hania, 8 lat, uczennica Prawidłowo zbilansowana dieta zapewnia dziecku wszystkie niezbędne składniki do prawidłowego rozwoju fizycznego, jak i umysłowego. Średnia wartość energetyczna:

Bardziej szczegółowo

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued

Bardziej szczegółowo

Zestaw 12. Ziemniaki gotowane Waga l porcji -150 g. 10 porcji kg. l porcja g. Ziemniaki Sól 210,0 2,100

Zestaw 12. Ziemniaki gotowane Waga l porcji -150 g. 10 porcji kg. l porcja g. Ziemniaki Sól 210,0 2,100 Zestaw 12 Zupa ogórkowa Waga 1 porcji - 300 g I porcja 10 porcji Ogórek kwaszony 30,0 0,300 Marchew 18,7 0,187 Pietruszka, korzeń 7,5 0,075 Por 7,5 0,075 Seler korzeniowy 3,7 0,037 Ziemniaki 75,0 0,750

Bardziej szczegółowo

dr inż. Paulina Liszka dr inż. Mirosław Pysz Krakowska Wyższa Szkoła Promocji Zdrowia

dr inż. Paulina Liszka dr inż. Mirosław Pysz Krakowska Wyższa Szkoła Promocji Zdrowia Zasady układania jadłospisów, zmiany w wykorzystywanych dotychczas produktach spożywczych, obliczanie wartości odżywczej posiłku, przykładowy jadłospis dr inż. Paulina Liszka dr inż. Mirosław Pysz Krakowska

Bardziej szczegółowo

Politechnika Częstochowska. Projektowanie systemów użytkowych II

Politechnika Częstochowska. Projektowanie systemów użytkowych II Politechnika Częstochowska Wydział Inżynierii Mechanicznej i Informatyki Projektowanie systemów użytkowych II Zdalny wybór Prac Dyplomowych Diana Kisiała Tomasz Jewiarz Jacek Kucharzewski Informatyka,

Bardziej szczegółowo

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Podstawy języka SQL. SQL Structured Query Languagestrukturalny Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych

Bardziej szczegółowo

Bazy danych 2. Wykład 5 Structured Query Language (SQL) c.d. DDL

Bazy danych 2. Wykład 5 Structured Query Language (SQL) c.d. DDL Bazy danych 2 Wykład 5 Structured Query Language (SQL) c.d. DDL Dziedzina (DOMAIN) Dziedzina to zdefiniowany przez uŝytkownika zbiór dopuszczalnych wartości definiowany niezaleŝnie od definicji tabel Składnia

Bardziej szczegółowo

NADCIŚNIENIE TĘTNICZE K( ) *

NADCIŚNIENIE TĘTNICZE K( ) * NADCIŚNIENIE TĘTNICZE K( ) * * Nadciśnienie tętnicze leczone lekami niewymagającymi dodatkowej podaży potasu Produkty zalecane - dozwolone pieczywo niskosodowe do kupienia w sklepach ze zdrową żywnością

Bardziej szczegółowo

Deklarowanie tytułu związanej z tabelą

Deklarowanie tytułu związanej z tabelą Tabele 1 Deklarowanie tytułu związanej z tabelą Przychody w latach 2007-2010 Położenie pozbawione stylu Treść nagłówka Formatowanie położenia w stylach

Bardziej szczegółowo

ZBILANSOWANA DIETA TALERZ ZDROWIA SMACZNIE, ZDROWO, KOLOROWO. Anna Oblacińska Instytut Matki i Dziecka

ZBILANSOWANA DIETA TALERZ ZDROWIA SMACZNIE, ZDROWO, KOLOROWO. Anna Oblacińska Instytut Matki i Dziecka ZBILANSOWANA DIETA TALERZ ZDROWIA SMACZNIE, ZDROWO, KOLOROWO Anna Oblacińska Instytut Matki i Dziecka TALERZ CZY PIRAMIDA? Przedstawione w modelach zdrowego żywienia zalecenia żywieniowe to sugestie ogólne,

Bardziej szczegółowo

Obiektowe bazy danych Ćwiczenia laboratoryjne (?)

Obiektowe bazy danych Ćwiczenia laboratoryjne (?) Obiektowe bazy danych Ćwiczenia laboratoryjne (?) Tworzenie typów obiektowych 1. Zdefiniuj typ obiektowy reprezentujący SAMOCHODY. Każdy samochód powinien mieć markę, model, liczbę kilometrów oraz datę

Bardziej szczegółowo

8. Scenariusz lekcji dla klasy IV-VI szkoły podstawowej i I klasy gimnazjum

8. Scenariusz lekcji dla klasy IV-VI szkoły podstawowej i I klasy gimnazjum 8. Scenariusz lekcji dla klasy IV-VI szkoły podstawowej i I klasy gimnazjum Temat: Wybory żywieniowe produkty zalecane i niezalecane w żywieniu. Cel: Kształtowanie prawidłowych nawyków żywieniowych. Zdobyte

Bardziej szczegółowo

DECLARE typ [( )] [ NOT NULL ] [ { := DEFAULT } ];

DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ]; Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server

Bardziej szczegółowo

NADCIŚNIENIE TĘTNICZE K(+) *

NADCIŚNIENIE TĘTNICZE K(+) * NADCIŚNIENIE TĘTNICZE K(+) * * Nadciśnienie tętnicze leczone lekami wymagającymi dodatkowej podaży potasu Produkty zalecane - dozwolone pieczywo niskosodowe do kupienia w sklepach ze zdrową żywnością i

Bardziej szczegółowo

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu Zbiór pytań nr 5 1 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu connect athos/musketeer grant select,insert,update,delete on athos.services to porthos with grant option; grant

Bardziej szczegółowo

Systemowe aspekty baz

Systemowe aspekty baz Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

kończy wysyłanie danych do pliku tworzy strukturę tabeli wyświetla opis struktury tabeli zmiana nazwy tabeli usuwanie tabeli

kończy wysyłanie danych do pliku tworzy strukturę tabeli wyświetla opis struktury tabeli zmiana nazwy tabeli usuwanie tabeli SPOOL moj_plik SPOOL OFF @ moj_ plik edit CREATE TABLE DESCRIBE ALTER TABLE RENAME DROP TABLE CONNECT CONNECT USER_NAME DISCONNECT EXIT zapisuje wszystkie wydane polecenia oraz ich wyniki do pliku moj_plik,

Bardziej szczegółowo

Systemowe aspekty baz danych

Systemowe aspekty baz danych Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo