MySQL workbench - tvorba modelu: Rozdiel medzi revíziami
d |
d |
||
Riadok 11: | Riadok 11: | ||
Nástroj MySQL WorkBench sa dá stiahnuť z adresy http://wb.mysql.com | Nástroj MySQL WorkBench sa dá stiahnuť z adresy http://wb.mysql.com | ||
− | [[Súbor:mysql workbench.png|center | + | [[Súbor:mysql workbench.png|frame|center|MySQL WorkBench - úvodná obrazovka]] |
==Vytvorenie Entitno-Relačného modelu== | ==Vytvorenie Entitno-Relačného modelu== | ||
Riadok 33: | Riadok 33: | ||
:Otvorí sa pracovné prostredie s preddefinovanou schémou (resp. databázou) ''mydb''. Túto schému premenujeme na "slovnik". Je to vlastne názov budúcej databázy. | :Otvorí sa pracovné prostredie s preddefinovanou schémou (resp. databázou) ''mydb''. Túto schému premenujeme na "slovnik". Je to vlastne názov budúcej databázy. | ||
− | [[Súbor:mysql workbench 2.png|center | + | [[Súbor:mysql workbench 2.png|frame|center|MySQL WorkBench - pracovné prostredie]] |
:Najjednoduchší spôsob ako vytvoriť nové tabuľky v otvorenej schéme je vizuálny editor. | :Najjednoduchší spôsob ako vytvoriť nové tabuľky v otvorenej schéme je vizuálny editor. | ||
Riadok 41: | Riadok 41: | ||
:V hornej časti pracovnej plochy zvolíme "Add diagram" pre vizuálny návrh ER diagramu. Na pracovnú plochu vložíme novú tabuľku (Ikony v ľavej časti pracovnej plochy, alebo klávesová skratka T). Nová tabuľka bude mať názov ''table1''. Dvojitým klikom na tabuľku sa otvorí editor tabuľky, kde môžeme zmeniť názov tabuľky. Pomenujme ju ''slova_en''. | :V hornej časti pracovnej plochy zvolíme "Add diagram" pre vizuálny návrh ER diagramu. Na pracovnú plochu vložíme novú tabuľku (Ikony v ľavej časti pracovnej plochy, alebo klávesová skratka T). Nová tabuľka bude mať názov ''table1''. Dvojitým klikom na tabuľku sa otvorí editor tabuľky, kde môžeme zmeniť názov tabuľky. Pomenujme ju ''slova_en''. | ||
− | [[Súbor:mysql workbench 3.png|center | + | [[Súbor:mysql workbench 3.png|frame|center|MySQL WorkBench - tvorba ER diagramu]] |
:Tabuľke slova_en pridáme nasledujúce atribúty: | :Tabuľke slova_en pridáme nasledujúce atribúty: | ||
Riadok 49: | Riadok 49: | ||
:Tieto atribúty pridáme pomocou editora tabuľky, ktorého možnosti sú zobrazené na predchádzajúcom obrázku, v spodnej časti. Vyberieme záložku "Columns" - stĺpce. | :Tieto atribúty pridáme pomocou editora tabuľky, ktorého možnosti sú zobrazené na predchádzajúcom obrázku, v spodnej časti. Vyberieme záložku "Columns" - stĺpce. | ||
− | [[Súbor:mysql workbench 4.png|center | + | [[Súbor:mysql workbench 4.png|frame|center|MySQL WorkBench - editor tabuľky]] |
:Jednotlivé skratky majú nasledujúci význam: | :Jednotlivé skratky majú nasledujúci význam: | ||
Riadok 62: | Riadok 62: | ||
Podobne vytvoríme tabuľky ''slova_sk'' a ''kategorie''. | Podobne vytvoríme tabuľky ''slova_sk'' a ''kategorie''. | ||
− | [[Súbor:mysql workbench 5.png|center | + | [[Súbor:mysql workbench 5.png|frame|center|MySQL WorkBench - tabuľky ER diagramu slovník]] |
'''3. Zadefinovanie vzťahov medzi tabuľkami''' | '''3. Zadefinovanie vzťahov medzi tabuľkami''' | ||
Riadok 72: | Riadok 72: | ||
:Vytvoríme vzťah 1:N medzi tabuľkami slova_en a slova_sk. Nástrojom "1:n Identifying Relationschip" [[Súbor:ikona 1n.png]] ako prvú označíme tabuľku, ktorá sa vo vzťahu vyskytuje viacero krát (v našom prípade je to slova_sk). Následne označíme tabuľku, ktorá je vo vzťahu len 1× (slova_en). Podobne to urobíme i pre dvojicu kategorie - slova_en. | :Vytvoríme vzťah 1:N medzi tabuľkami slova_en a slova_sk. Nástrojom "1:n Identifying Relationschip" [[Súbor:ikona 1n.png]] ako prvú označíme tabuľku, ktorá sa vo vzťahu vyskytuje viacero krát (v našom prípade je to slova_sk). Následne označíme tabuľku, ktorá je vo vzťahu len 1× (slova_en). Podobne to urobíme i pre dvojicu kategorie - slova_en. | ||
− | [[Súbor:mysql workbench 6.png|center | + | [[Súbor:mysql workbench 6.png|frame|center|MySQL WorkBench - ER diagram prekladového slovníka]] |
Verzia zo dňa a času 21:02, 11. december 2010
Softvér MySQL Workbench poskytuje grafický nástroj pre prácu s MySQL databázami. MySQL Workbench plne spolupracuje so servermi MySQL Server verzie 5.1 a vyššie. Nepodporuje MySQL Server 4.x. MySQL Workbench ponúka tri hlavné moduly:
- SQL nástroje
- Modelovanie dát (Data Modeling)
- Správa MySQL servera
- SQL nástroje
- Umožňujú vytvárať a spravovať pripojenia k databázovým serverom. MySQL Workbench dovoľuje spustiť SQL dotazy na databázu pomocou zabudovaného SQL editora.
- Data Modeling
- Umožňuje graficky vytvoriť model databázy (entitno-relačný diagram), poskytuje reverse ingeneering pre vtvorenie ER diagramu z existujúcej databázy, ale aj vytvorenie databázy z navrhnutého modelu. Vstavaný editor údajov poskytuje možnosť editovania tabuliek - obsahu aj metadát, tvorbu indexov, spúšťačov (Triggers), pohľadov, privilégií, procedúr.
- Správa servera
- Umožňuje vytvárať a spravovať jednotlivé inštancie serverov. Táto funkcia nahrádza, skôr poskytnutú aplikáciu MySQL Administrator.
Nástroj MySQL WorkBench sa dá stiahnuť z adresy http://wb.mysql.com
Vytvorenie Entitno-Relačného modelu
V nasledujúcom texte si ukážeme postup pri tvorbe jednoduchého ER modelu jednosmerného prekladového anglicko-slovenského slovníka. Krátky popis problému: Navrhnite ER diagram pre aplikáciu anglicko-slovenského prekladového slovníka. Požaduje sa, aby boli anglické slová rozdelené do kategórií.
Riešenie: V zadaní identifikujeme 3 entity:
- zoznam anglických slov (slova_en)
- zoznam slovenských slov (slova_sk)
- zoznam kategórií (kategorie)
Medzi týmito entitami sú nasledujúce vzťahy:
- slova_en - slova_sk 1:N
- kategorie - slova_en 1:N
Postup v prostredí MySQL WorkBench
1. Vytvorenie novej databázovej schémy
- V úvodnej obrazovke (predchádzajúci obrázok) vyberieme "Create New EER Model" (v strednej časti).
- Otvorí sa pracovné prostredie s preddefinovanou schémou (resp. databázou) mydb. Túto schému premenujeme na "slovnik". Je to vlastne názov budúcej databázy.
- Najjednoduchší spôsob ako vytvoriť nové tabuľky v otvorenej schéme je vizuálny editor.
2. Vytvorenie nového ER modelu
- V hornej časti pracovnej plochy zvolíme "Add diagram" pre vizuálny návrh ER diagramu. Na pracovnú plochu vložíme novú tabuľku (Ikony v ľavej časti pracovnej plochy, alebo klávesová skratka T). Nová tabuľka bude mať názov table1. Dvojitým klikom na tabuľku sa otvorí editor tabuľky, kde môžeme zmeniť názov tabuľky. Pomenujme ju slova_en.
- Tabuľke slova_en pridáme nasledujúce atribúty:
- id - identifikačné číslo. Bude slúžiť ako primárny kľúč.
- slovo_en - anglické slovo
- Tieto atribúty pridáme pomocou editora tabuľky, ktorého možnosti sú zobrazené na predchádzajúcom obrázku, v spodnej časti. Vyberieme záložku "Columns" - stĺpce.
- Jednotlivé skratky majú nasledujúci význam:
- PK - Primary Key. Primárny kľúč.
- NN - Not Null. Hodnota daného atribútu musí byť vždy definovaná (nemôže byť prázdna). V našom prípade to znamená, že v tabuľke anglických slov nemôže byť taký záznam, ktorý by obsahoval prázdny údaj pre stĺpec slovo_en.
- UQ - Unique. Hodnota atribútu musí byť jedinečná. Znamená to, že v stĺpci slovo_en nemôžu byť dve rovnaké anglické slová.
- BIN - Binary. Indikuje, že obsahom atribútu sú binárne dáta.
- UN - Unsigned. Platí len pre celočíselné hodnoty a hovorí že hodnota môže byť len kladná.
- ZF - Zerofill. Automaticke dopĺňa pred číslo nuly.
- AI - Auto Increment. Používa sa len s kombinácii s PK. Pri vkladaní nového údaju do tabuľky nemusíme špecifikovať hodnotu primárneho kľúča. Tá sa sama vypočíta ako ďalšie nepoužité číslo v poradí.
Podobne vytvoríme tabuľky slova_sk a kategorie.
3. Zadefinovanie vzťahov medzi tabuľkami
Ako už bolo spomenuté vzťahy medzi jednotlivými tabuľkami sú:
- slova_en - slova_sk 1:N
- kategorie - slova_en 1:N
- Vytvoríme vzťah 1:N medzi tabuľkami slova_en a slova_sk. Nástrojom "1:n Identifying Relationschip"
ako prvú označíme tabuľku, ktorá sa vo vzťahu vyskytuje viacero krát (v našom prípade je to slova_sk). Následne označíme tabuľku, ktorá je vo vzťahu len 1× (slova_en). Podobne to urobíme i pre dvojicu kategorie - slova_en.