<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Web marketing, Web development, Baze podataka, Internet biznis &#187; MySQL Workbench tutorial</title>
	<atom:link href="http://www.zawebancija.com/tag/mysql-workbench-tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zawebancija.com</link>
	<description>Kung-Fu ekipa za web ;)</description>
	<lastBuildDate>Sun, 07 Aug 2011 21:01:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>MySQL Workbench &#8211; kako napraviti model baze podataka</title>
		<link>http://www.zawebancija.com/mysql-workbench-kako-napraviti-model-baze-podataka/</link>
		<comments>http://www.zawebancija.com/mysql-workbench-kako-napraviti-model-baze-podataka/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 01:25:44 +0000</pubDate>
		<dc:creator>bbaja</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[baza podataka]]></category>
		<category><![CDATA[eer dijagram]]></category>
		<category><![CDATA[izrada modela baze]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[MySQL Workbench tutorial]]></category>
		<category><![CDATA[relacijski model]]></category>
		<category><![CDATA[vanjski ključevi]]></category>

		<guid isPermaLink="false">http://www.zawebancija.com/?p=47</guid>
		<description><![CDATA[Bilo da ste totalni početnik ili profesionalac u radu sa bazama podataka, potreban vam je dobar software za modeliranje, osmišljavanje kako će baza podataka izgledati i koje će biti relacije između tablica. I siguran sam da su vam miliji besplatni alati od komercijalnih, naravno ako mogu napraviti ono što želite.
U ovom članku ću se posvetiti [...]]]></description>
			<content:encoded><![CDATA[<p>Bilo da ste totalni početnik ili profesionalac u radu sa bazama podataka, potreban vam je dobar software za modeliranje, osmišljavanje kako će baza podataka izgledati i koje će biti relacije između tablica. I siguran sam da su vam miliji besplatni alati od komercijalnih, naravno ako mogu napraviti ono što želite.</p>
<p>U ovom članku ću se posvetiti upravo početnicima i pokušati objasnit na što jednostavniji način kako napraviti dobar model baze, održavati ga što jednostavnije i bezbolnije, te na kraju exportati i postaviti funkcionalnu bazu na serveru.</p>
<p><a title="MySQL Workbench" rel="nofollow" href="http://wb.mysql.com/" target="_blank">MySQL Workbench</a> je jedan od takvih besplatnih alata koji ima puno više mogućnosti nego će vam za početak trebati, ali upravo zato je odličan, jer kako vi budete više znali o bazama podataka, tako će vas MySQL Workbench pratiti i pružiti vam da napravite ono što ste zamislili.</p>
<p>Dok dođemo do koraka modeliranja baze podataka već imamo ideju o aplikaciji i što bi ona trebala sadržavati, bez obzira koliko je jednostavna  ili kompleksna.</p>
<p>Za primjer ću uzeti nešto vrlo jednostavno uz pretpostavku da ste upoznati sa tipovima podataka u MySQL-u.</p>
<p><span id="more-47"></span></p>
<p><strong>Zadatak: hoću napraviti model baze za koji će sadržavati podatke o učenicima i njihovim ocjenama iz raznih predmeta</strong></p>
<p>Startni ekran MySQL Workbench-a je vrlo jednostavan i sve što nas na njemu sada zanima je Physical Schemata dio i naša početna schema koja se u startu zove mydb. U kontekstu MySQL Workbench-a schema je baza podataka.</p>
<div id="attachment_52" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-schema-1.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-52" title="MySQL Workbench - preimenovanje scheme" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-schema-1-300x225.png" alt="MySQL Workbench - preimenovanje scheme" width="300" height="225" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p>Ukoliko želimo  promjeniti ime naše baze u skola, sve što trebamo napraviti je dvoklik na ime scheme. Na donjem dijelu ekrana će nam se otvoriti podaci za bazu podataka (schemu) i tamo možemo jednostavno promjeniti ime.</p>
<p><strong>Tablice</strong></p>
<p>Dakle, imamo 3 osnovna tipa podataka &#8211; učenik, predmet, ocjena. Ta tri tipa podataka su nam ujedno i početne tablice. Kreiranje tablice također ne može biti jednostavnije i radi se na isti način kao promjena imena scheme. Dvoklik na <em>Add table</em> i u donjem dijelu ekrana nam se pojavljuje skup podataka za tablicu koju želimo kreirati.</p>
<div id="attachment_57" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-dodavanje-tablice-1.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-57" title="MySQL Workbench - dodavanje tablice" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-dodavanje-tablice-1-300x193.png" alt="" width="300" height="193" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p>Tabovi koji su na slici iznad uokvireni plavom bojom služe nam kako bi definirali sve potrebne podatke vezane uz tablicu. Za sad ću se zadržati na kolonama, indexima i ključevima (foreign key). Na prvom tabu <em>Table</em> unesemo ime tablice i odaberemo osnovne prametre &#8211; encoding i tip tablice.</p>
<p>Kada smo gotovi s tim, kliknemo na <em>Columns</em>. U ovom dijelu definiramo polja u tablici i tipove podataka za svako polje. Jednostavno upišemo ime polja, odaberemo tip i sa TAB prelazimo na drugo polje. Dodatno je moguće podesiti NOT NULL (NN) i AUTO INCREMENT (AI) vrijednosti za svako polje.</p>
<div id="attachment_58" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-kreiranje-polja-u-tablici.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-58" title="MySQL Workbench - kreiranje polja u tablici" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-kreiranje-polja-u-tablici-300x96.png" alt="" width="300" height="96" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p>Tab <em>Indexes</em> služi, naravno, kreiranju indeksa koji se dodaju na jednak način kao i polja &#8211; unese se ime indexa, odabere se tip i s desne strane se označe polja na koja se taj index odnosi.</p>
<div id="attachment_60" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-kreiranje-indexa-u-tablici.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-60 " title="MySQL Workbench - kreiranje indexa u tablici" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-kreiranje-indexa-u-tablici-300x99.png" alt="" width="300" height="99" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p><strong>Foreign keys ili vanjski ključevi</strong></p>
<p>Sljedeći tab je <em>Foreign Keys</em>, ali za njega nam je potrebna barem još jedna tablica, prema tome, na do sad opisan način ću kreirati tri osnovne tablice koje trebamo &#8211; <em>ucenik, predmet </em>i <em>ocjena</em>.</p>
<p>Budući se ocjena odnosi na predmet i učenika, tablica <em>ocjena</em> će imati dva vanjska ključa prema tablicama predmet i učenik koja ćemo kreirati u <em>Foreign Keys</em> tabu. Dakle, u <em>ocjena</em> tablici ćemo imati 2 polja &#8211; <em>ucenik_id</em> i <em>predmet_id</em> s tim da moramo paziti da su ta 2 polja istog tipa podataka kao ključevi te dvije tablice (id).</p>
<p>Nakon što se dodaju ta dva polja, idemo na <em>Foreign Keys</em> tab.</p>
<div id="attachment_61" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-kreiranje-foreign-key-u-tablici.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-61 " title="MySQL Workbench - kreiranje foreign key" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-kreiranje-foreign-key-u-tablici-300x156.png" alt="" width="300" height="156" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p>Na slici iznad uokvireno plavim kvadratom je ime ključa i tablica koju taj ključ referencira. Kad se odabere tablica, s desne strane uokvireno zelenim kvadratom dobije se popis polja postojeće tablice (ocjena). Tu odaberemo polje koje se iz postojće tablice veže na vanjsku tablicu. Čim ga odaberemo odmah do nam se pojavi selectbox sa listom polja iz vanjske tablice i trebamo odabrati polje na koje se ključ referencira.<br />
Znači &#8211; napišemo ime ključa, odaberemo vanjsku tablicu na koju se ključ odnosi, odaberemo polje iz početne tablice i nakon toga polje iz vanjske tablice.</p>
<p>Sada idemo prvo povezati učenika sa predmetom. Za to će nam biti potrebna nova, relacijska tablica koja će u sebi imati id predmeta i id učenika. Kombinacija ta dva id polja mora biti unique, jer jedan učenik ne može imati 2 ista predmeta. Tablicu ću nazvati <em>ucenik_predmet</em>.</p>
<p>Ta tablica će imati samo 2 polja &#8211; <em>ucenik_id </em>i <em>predmet_id</em>. Ta dva polja treba povezati sa tablicama <em>ucenik </em>i <em>predmet</em> na istin način putem <em>Foreign Key </em>taba.</p>
<p><strong>Vizualna reprezentacija baze podataka</strong></p>
<p>Ok, sad imamo kompletne relacije sređene. Učenik može imati jedan ili više predmeta, predmet ima ocjene koje se odnose na učenika. Sada trebamo napraviti dijagram, odnosno vizualnu reprezentaciju baze.</p>
<p>Dvoklik na <em>Add diagram</em> na vrhu ekrana i otvori nam se prazni &#8220;papir&#8221; za ERR dijagram (Enhanced Entity-Relationship). S desne strane u toolbaru imamo popis tablica koje smo napravili. I sad jednostavno mišem odvučemo tablice na &#8220;papir&#8221;.</p>
<div id="attachment_62" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-schema-EER-1.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-62 " title="MySQL Workbench - kreiranje dijagrama / vizualizacija baze podataka" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-schema-EER-1-300x223.png" alt="" width="300" height="223" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p>Relacije koje smo postavili između tablica se automatski dodaju na dijagram kako dodajemo tablice.</p>
<p><strong>Export baze u SQL skriptu</strong></p>
<p>Na kraju nam ostaje još export podataka u sql skriptu kako bi mogli napravljene tablice i relacije importati na server. Klik na <em>File &gt; Export &gt; Forward engineer SQL CREATE script&#8230;</em></p>
<div id="attachment_63" class="wp-caption alignnone" style="width: 310px"><a href="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-schema-export-1.png" rel="wp-prettyPhoto[g47]"><img class="size-medium wp-image-63 " title="MySQL Workbench - export modela baze u SQL skriptu" src="http://www.zawebancija.com/wp-content/uploads/2010/03/mysqlworkbench-schema-export-1-300x214.png" alt="" width="300" height="214" /></a><p class="wp-caption-text">Klikni za veću sliku</p></div>
<p><em><span style="font-style: normal;">Pojavit će se dijalog sa nekoliko opcija. Odaberite što vam odgovara, klik na </span>Next &gt;&gt;</em>. Na sljedećem dijelu dijaloga odaberemo što želimo exportati i &#8211; to je to :))</p>
<p>Jednostavno, zar ne ;)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zawebancija.com/mysql-workbench-kako-napraviti-model-baze-podataka/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

