Hogyan építsünk áramkört a munkapadon. A modelltől a fizikai adatbázisig a MySQL WorkBenchben. Adatmodell létrehozása és szerkesztése

Minden webmesternek bele kell mélyednie a programozási és adatbázis-létrehozási technológiákba az erőforrások fejlesztése után.


Fokozatosan elkezd elmélyülni minden részletben, de a képzési anyagokat nem mindig könnyű megtalálni. Ráadásul nem mindenki tud a létezéséről hasznos programokat.

Hogyan készítsünk MySQL adatbázist? Kézzel is létrehozhat táblázatokat, és kapcsolatokat hozhat létre közöttük, de ez nem olyan kényelmes.

Kifejezetten erre készült ingyenes program Munkapad. Segítségével vizuálisan hozhat létre MySQL adatbázisokat. Modellezésük szoftverrel egyszerűbb, kényelmesebb és sokkal gyorsabb.

A Workbench segít létrehozni egy MySQL adatbázist

Egyetlen egyszerű eszközzel többé nem kell leírnia a szerkezetet. A program automatikusan generálja a kódot. Töltse le a segédprogramot erről az oldalról, minden operációs rendszerhez alkalmas.

A program normál telepítése után MySQL adatbázis létrehozásához a következőket kell tennie:

  1. Először meg kell nyitnia új modell, ez a menün vagy a Ctrl+N billentyűkombináción keresztül történik:

  2. Az adatbázis létrehozásának első lépése egy tábla hozzáadása, ezért kiválasztjuk a megfelelő függvényt:

  3. Ezután a táblázat kitöltése következik. Adja meg a nevet és az attribútumokat, ne feledje, hogy az attribútumok egyike a fő kulcs, jelölőnégyzettel. Előre gondolja át, hogyan kapcsolódnak majd egymáshoz a táblák:

  4. A szükséges adatok kitöltése után készítsen diagramot a tárgyak közötti kapcsolatok azonosításához:
  5. A munkaterületen egy asztal látható. A kényelem érdekében kibővítheti a táblázat struktúráit:

  6. Most be kell állítania az elemek közötti kapcsolatokat; ez egy speciális eszközzel történik a munkapanelen:
  7. Ennek eredményeként táblázatokat kell megjelenítenie a munkaterületen, és kapcsolatokat kell létrehoznia közöttük:

  8. A kapcsolatra duplán kattintva megnyílik egy ablak, amelyben további paraméterek állíthatók be:

A webfejlesztő az általa létrehozott és fejlesztett projektekkel együtt fejlődik. A projektek növekedésével a szoftver összetettsége növekszik, az általa feldolgozott adatok mennyisége elkerülhetetlenül növekszik, valamint adatséma összetettsége. A többi webfejlesztővel folytatott kommunikáció azt mutatja, hogy a MySQL adatbázisok nagyon népszerűek nálunk, és ezek kezelésére - a jól ismert PHPMyAdmin. A kis projektektől a nagyok felé, a cm-ektől a keretrendszerek felé haladva sokan, hozzám hasonlóan, hűek maradnak a MySQL-hez. Egy összetett, nagyszámú táblát és kapcsolatot tartalmazó adatbázis megtervezéséhez azonban a PHPMyAdmin képességei nagyon hiányoznak. Ezért úgy döntöttem, hogy írok egy értékelést A MySQL Workbench egy nagyszerű ingyenes asztali program a MySQL-lel való munkához.

Az áttekintés első részében a programmal való munka alapjairól fogok beszélni, így ezt a cikket használhatja kezdő útmutató. A második rész a Workbench harci használatának lesz szentelve, amikor távoli szerverrel dolgozik. Ebben megadom az alapokat utasítás valamint ajánlások a szerverkapcsolat beállításához és a vele való szinkronizáláshoz.

MySQL Workbench- Vizuális adatbázis-tervezési eszköz, amely integrálja a tervezést, a modellezést, az adatbázis létrehozását és működtetését egyetlen zökkenőmentes környezetbe a MySQL adatbázisrendszer számára.

Azt kell mondanom, hogy a program nagyon jó. Lehetővé teszi, hogy gyorsan és örömmel dobjon projekt adatsémák, design entitások és kapcsolatok közöttük, fájdalommentesen változtatásokat végrehajtani a rendszerbe, és ugyanolyan gyorsan és fájdalommentesen szinkronizálni távoli szerverrel. A grafikus szerkesztő EER diagramok, a vicces csótányokra emlékeztető, lehetővé teszi az adatmodell összképének megtekintését, könnyedségének és eleganciájának élvezetét :) Az első próbálkozás után ez az eszköz nélkülözhetetlen asszisztenssé válik egy webprogramozó harci arzenáljában.

Töltse le a MySQL Workbench programot

A MySQL Workbench disztribúció ezen az oldalon érhető el. A program legfrissebb verziója a cikk írásakor az 6.1-es verzió. Letöltés előtt ki kell választania az alábbi platformok egyikét:

A platform kiválasztása után a rendszer felkéri, hogy regisztráljon vagy jelentkezzen be az Oracle-be. Ha nem akarod, lent van egy link. "Nem, köszönöm, csak indítsa el a letöltést"- kattints rá ;)

A munka kezdete

A program kezdőképernyője tükrözi a főbb funkciókat - adatbázismodellek tervezését és adminisztrációját:

A képernyő tetején található a csatlakozások listája MySQL szerverek projektjeiből, és a képernyő alján található a legújabb nyílt adatmodellek listája. A munka általában azzal kezdődik adatséma létrehozása vagy meglévő struktúra betöltése a MySQL Workbenchbe. Menjünk dolgozni!

Adatmodell létrehozása és szerkesztése

Modell hozzáadásához kattintson a "Modellek" fejléc melletti pluszjelre, vagy válassza a lehetőséget "Fájl → Új modell" (Ctrl + N):

Ezen a képernyőn írja be az adatbázis nevét, válassza ki az alapértelmezett kódolást, és ha szükséges, töltse ki a megjegyzés mezőt. Elkezdheti a táblázatok létrehozását.

Táblázat hozzáadása és szerkesztése

A projekt adatbázisok listája és az adatbázison belüli táblák listája a lapon található "Fizikai sémák". Táblázat létrehozásához kattintson duplán a gombra "+Táblázat hozzáadása":

Megnyílik egy kényelmes felület a mezők listájának és tulajdonságaik szerkesztéséhez. Itt állíthatjuk be a mező nevét, adattípusát, illetve a mezőkhöz különböző attribútumokat is beállíthatunk: mező hozzárendelése elsődleges kulcs (PK), Jelöld meg Nem nulla (NN), bináris (BIN), egyedi (UQ)és mások, mezőre állítva automatikus növekmény (AI)És alapértelmezett érték.

Indexkezelés

A lapon táblaindexeket adhat hozzá, törölhet és szerkeszthet "Indexek" táblázatkezelő felület:

Adja meg az index nevét, válassza ki a típusát, majd ellenőrizze az indexben részt vevő mezők listáját a kívánt sorrendben. A mezők sorrendje megegyezik a jelölőnégyzetek bejelölésének sorrendjével. Ebben a példában hozzáadtam egyedi index a mezőre felhasználónév.

Táblák közötti kapcsolatok

Idegen kulcsok beállítása és táblák összekapcsolása csak táblákhoz lehetséges InnoDB(ez a tárolórendszer alapértelmezés szerint van kiválasztva). A kapcsolatok kezeléséhez minden táblához tartozik egy lap "Idegen kulcsok":

Kapcsolat hozzáadásához nyissa meg a lapot "idegen kulcsok" gyermek asztal, írja be az idegen kulcs nevét, és válassza ki szülő táblázat. Tovább a fül középső részén az oszlopban Oszlop válassza ki a kulcsmezőt a gyermektáblázatból, és az oszlopban Hivatkozott oszlop- a megfelelő mező a szülőtáblából (a mezőtípusoknak meg kell egyeznie). Idegen kulcsok létrehozásakor a megfelelő indexek automatikusan létrejönnek a gyermektáblázatban.

fejezetben "Külföldi kulcs opciók" konfigurálja az idegen kulcs viselkedését, amikor a megfelelő mező megváltozik (FRISSÍTÉSBEN)és eltávolítása (TÖRLÉS BE) szülői rekord:

  • KORLÁTOZ- hibát dob ​​a szülőrekord megváltoztatásakor/törlésekor
  • VÍZESÉS- Frissítse az idegen kulcsot, ha a szülő rekord megváltozik, törölje a gyermek rekordot, ha a szülő törlődik
  • SET NULL- állítsa be az idegen kulcs értékét NULLA szülő megváltoztatásakor/törlésekor (nem elfogadható azoknál a mezőknél, amelyeknél a zászló be van állítva NEM NULLA!)
  • NINCS MŰVELET- ne csinálj semmit, de valójában a hatás hasonló a KORLÁTOZÁS-hoz

A fenti példában hozzáadtam a gyermektáblázathoz Felhasználói profil idegen kulcs a szülőtáblához való hivatkozáshoz Felhasználó. Egy mező szerkesztésekor Felhasználói azonosítóés pozíciók törlése a táblázatból Felhasználó hasonló változtatásokra kerül sor automatikusan táblázat kapcsolódó rekordjaival is előfordulnak Felhasználói profil.

Projekt létrehozásakor gyakran kell indítási adatokat hozzáadni az adatbázishoz. Ezek lehetnek gyökérkategóriák, rendszergazdai felhasználók stb. A MySQL Workbench táblakezelésben van egy fül erre "Beszúrások":

Amint a példából látható, ha valamilyen MySQL függvényt kell alkalmazni az adatokra az adatbázisba írás előtt, akkor ez a szintaxis használatával történik \func functionName("data"), Például, \func md5("jelszó").

EER diagram (entitás-kapcsolat diagram) készítése

Az adatséma, entitások és kapcsolataik grafikus formában történő bemutatásához a MySQL Workbench rendelkezik egy EER diagramszerkesztővel. Diagram létrehozásához az adatbázis-kezelő képernyő tetején kattintson duplán az ikonra "+Diagram hozzáadása":

Felületén táblákat hozhat létre és szerkeszthet, kapcsolatokat hozhat létre közöttük különféle típusok. A diagramban már létező táblázat hozzáadásához egyszerűen húzza át a panelről "Katalógusfa".

Adatséma exportálásához ide grafikus fájl válassza ki "Fájl → Exportálás" majd az egyik opciót (PNG, SVG, PDF, PostScript fájl).

Meglévő adatséma importálása (SQL dump-ből)

Ha már van adatsémánk, akkor az könnyen importálható a MySQL Workbenchbe a további munkához. Modell SQL-fájlból történő importálásához válassza a lehetőséget "Fájl → Importálás → Reverse Engineer MySQL Szkript létrehozása...", majd válassza ki a kívánt SQL fájlt, és kattintson a gombra "Végrehajtás >"

A MySQL Workbench az adatmodell importálását és szinkronizálását is biztosítja közvetlenül egy távoli szerverrel. Ehhez létre kell hoznia kapcsolat távoli hozzáférés a MySQL-hez, amelyről az áttekintés folytatásában fogok beszélni.

A cikk demóprojektje letölthető erről a linkről. Sok sikert és gyönyörű csótánysémákat kívánok!


Bármi legyen is az adatbázis-fejlesztő: kezdő (főleg) vagy szakállas szakember, mindig könnyebben és látványosabban tudja bemutatni, min dolgozik és fejleszt. Személy szerint az első kategóriába tartozónak tartom magam, és ahhoz, hogy megértsem azt az anyagot, amit szeretnék vizuálisan látni, amit tervezek/fejlesztek.

Ma már vannak különféle programokés a hasonló feladattal megbirkózó eszközök: van, amelyik jobb, van, amelyik rosszabb. De ma szeretnék beszélni egy kicsit a MySQL WorkBenchről – egy vizuális adatbázis-tervező eszközről, amely egyetlen zökkenőmentes környezetbe integrálja az adatbázis-tervezést, a modellezést, a létrehozást és a működést a MySQL adatbázisrendszer számára, amely a FabForce DBDesigner 4 utódja.( c) Wikipédia. A MySQL WorkBench kétféle változatban kerül forgalomba: OSS – közösségi kiadás(LGPL licenc alatt terjesztve) és S.E. - Standard kiadás- az a verzió, amelyért a fejlesztők pénzt kérnek. De szerintem ez sokaknak elég lesz O.S.S. verzió (különösen kezdőknek és azoknak, akik nem akarnak vagy nem tartanak megfelelőnek fizetni a szoftverekért, valamint a nyílt forráskódú programok támogatóinak), Sőt, az OSS verzió gazdag funkcionalitással rendelkezik.

Tehát, ahogy a neve is sugallja, ezt az eszközt úgy tervezték, hogy vele működjön MySQL adatbázisok, és számos különböző típusú MySQL-modellt támogat (lásd az alábbi képernyőképet), és nélkülözhetetlen eszköz lesz a relációs adatbázisok (különösen a MySQL) jobb megértéséhez és tanulásához a kezdők számára:

Így minden MySQL fejlesztő megtalálja, amire szüksége van. kívül MySQL WorkBench lehetővé teszi egy meglévő adatbázis összekapcsolását, végrehajtását SQL lekérdezésekés SQL szkripteket, adatbázis-objektumokat szerkeszteni és kezelni. De aki most kezdi el elsajátítani a relációs adatbázisokat, annak szerintem a legérdekesebb az a képesség, EER modellek Adatbázis. Más szóval, ez az adatbázis táblái közötti összes kapcsolat vizuális megjelenítése, amely szükség esetén könnyen bemutatható SQL-szkript formájában, szerkeszthető vagy új nézetet hozhat létre. De erről kicsit később. Először is nézzük meg, hogyan néz ki a fő szem MySQL WorkBench(5.2.33 rev 7508):
Az adatbázis EER modelljének létrehozásához válassza a " Új EER modell létrehozása" Ennek eredményeképpen lesz egy lapunk, amelyen diagramokat, táblákat, nézeteket, eljárásokat adhatunk/létrehozhatunk; különféle hozzáférési jogokat állíthatunk be a felhasználók számára; modellt hozhatunk létre SQL szkriptek segítségével. Ez a lap így néz ki:
A táblák és adatbázisok létrehozásának folyamatát nem vesszük figyelembe, mert itt minden egyszerű. Csak a kész modell végleges verzióját adom meg (lásd lentebb a képernyőképeket). Sőt, ha a kurzort a táblák kapcsolódási vonala (szaggatott vonal) fölé viszi, akkor a „kapcsolat”, az elsődleges kulcs, valamint az idegen kulcs más színnel lesz kiemelve. Ha a kurzort egy táblázat fölé viszi, maga a táblázat, valamint a kiválasztott táblához tartozó összes kapcsolat lesz kiemelve.

A táblázat szerkesztéséhez kattintson a jobb gombbal a kívánt táblázatra, és válassza a " Táblázat szerkesztése... ". Ennek eredményeként egy további táblázatszerkesztő terület jelenik meg az ablak alján, amelyben megváltoztathatja a tábla nevét, oszlopait, idegen kulcsait és sok mást. Táblázat SQL szkriptbe exportálásához , kattintson a jobb gombbal a kívánt táblázatra, és válassza a " SQL másolása a vágólapra", majd illessze be a vágólapról a kívánt helyre/programba/fájlba.

És most közvetlenül kb telepítés MySQL WorkBench. Természetesen először le kell töltenie a MySQL WorkBench programot. Ehhez lépjen a MySQL WorkBench letöltési oldalára, az oldal alján a legördülő listában válassza ki a számunkra szükséges operációs rendszer. Ennek eredményeként számos letöltési lehetőséget kínálunk:

  • OS számára ablakok letöltheti az MSI telepítőjét, a program zip archívumát, valamint a forráskódot tartalmazó archívumot. Ehhez az operációs rendszerhez MySQL WorkBench csak a Windows 32 bites verziójához tölthető le;
  • felhasználók számára Ubuntu a választék egy kicsit gazdagabb, mint a Windows operációs rendszer felhasználóinak - felajánljuk a letöltést MySQL WorkBench az Ubuntu 10.04-es, 10.10-es (a cikk írásakor) és a deb csomagok 32 vagy 64 bites verzióihoz;
  • Mert fordulatszám alapú disztribúciók, és ebben az esetben ezek a Fedora, a Suse Linux és a RedHat/Oracle Linux, MySQL WorkBenchösszeállítások 32 és 64 bites operációs rendszerhez kerülnek bemutatásra;
  • A Macintosh felhasználók sem felejtették el – számukra csak a 32 bites operációs rendszerhez van szerelvény;
  • Nos, természetesen letöltheti forrás programok;

Tehát válassza ki a kívánt letöltési lehetőséget, és kattintson Letöltés. Ezután bemutatkozunk: regisztrált felhasználóknak - adja meg bejelentkezési nevét és jelszavát, újoncoknak - regisztráljon. Ha nem szeretne bemutatkozni, válassza az alábbi lehetőséget " "Nem, köszönöm, csak vigyél a letöltésekhez!" és válassza ki a legközelebbi tükröt a letöltéshez. Ezenkívül a telepítés előtt győződjön meg arról, hogy telepítette MySQL kliens,.ellenkező esetben a MySQL WorkBench megtagadja a telepítést.

Amit a Linux-felhasználóknak emlékezniük kell és tudniuk kell:

Természetesen a Windows operációs rendszerhez hasonlóan nem feledkezünk meg a MySQL Clientről sem. Az Ubuntu felhasználóknak le kell tölteniük a program verzióját az Ubuntu verziójának megfelelően.Telepítés közben alaposan nézze meg a hibaüzeneteket, ha vannak, amelyek valószínűleg megmondják, mely csomagok hiányoznak az operációs rendszerből. Olvasson erről alább.

Sajnos nem tudom, hogy állnak a dolgok az rmp-base disztribúciókkal, mert... Soha nem használtam ilyen disztribúciókat, de szerintem nagyjából ugyanaz, mint a debian alapúakkal.

Talán észrevette, hogy hiányzik a szerelvény MySQL WorkBench OS számára Debian GNU/Linux. De ahogy a gyakorlat megmutatta, ez rendben van. A telepítéshez MySQL WorkBench Debian 6.0-ban (Squeeze) fogjuk használni deb- csomag a Ubuntu 10.04(ne feledkezzünk meg az operációs rendszer bitmélységéről: x86 vagy x64). Hadd emlékeztesselek arra, hogy a letöltött deb csomag telepítéséhez használhatja a segédprogramot gdebi vagy rootként írja be a parancsot a konzolba:

# dpkg -i mysql-workbench-gpl-5.2.33b-1ubu1004-amd64.deb Például a következő hibaüzenetet kaptam a MySQL WorkBench telepítésekor:
dpkg: a csomagfüggőségek megakadályozzák a mysql-workbench-gpl csomag konfigurálását:
A mysql-workbench-gpl a libcairomm-1.0-1-től függ (>= 1.6.4), azonban:
A libcairomm-1.0-1 csomag nincs telepítve.
A mysql-workbench-gpl azonban a libctemplate0 függvénytől függ:
A libctemplate0 csomag nincs telepítve.
A mysql-workbench-gpl a libgtkmm-2.4-1c2a-tól függ (>= 1:2.20.0), azonban:
A libgtkmm-2.4-1c2a csomag nincs telepítve.
A mysql-workbench-gpl a libpangomm-1.4-1-től függ (>= 2.26.0), azonban:
A libpangomm-1.4-1 csomag nincs telepítve.
A mysql-workbench-gpl a libzip1-től függ (>= 0,9), azonban:
A libzip1 csomag nincs telepítve.
A mysql-workbench-gpl a python-paramiko-tól függ, azonban:
A python-paramiko csomag nincs telepítve.
A mysql-workbench-gpl a python-pysqlite2-től függ, azonban:
A python-pysqlite2 csomag nincs telepítve.
dpkg: nem sikerült feldolgozni a mysql-workbench-gpl (--install) opciót:
függőségi problémák – hagyja konfigurálatlanul
Hibák történtek a következő csomagok feldolgozása során:
mysql-workbench-gpl

A hiba megoldásához csak a parancsot kellett beírnom a konzolba néhány csomag telepítéséhez:

# aptitude install libzip1 libcairomm-1.0-dev libctemplate0 libgtkmm-2.4-1c2a

A fenti csomagok telepítéséhez további csomagokra lesz szükség, amelyeket a menedzser alkalmas felajánlja a letöltést. Az összes szükséges csomag telepítése után a MySQL WorkBench probléma nélkül települ.

Ennyi: a MySQL WorkBench biztonságosan telepítve van, és készen áll a tanulásra.

upd:
Ha nem tévedek, akkor az Ubuntu 12.04-től kezdve a MySQL WorkBench megtalálható a terjesztési tárolókban. Következésképpen a telepítési folyamat sokkal egyszerűbb és mankók nélkül.
A MySQL WorkBench telepítéséhez írja be a parancsot a terminálba:
sudo aptitude install mysql-workbench

Figyelem, mivel a WorkBench frissítésre került, írtam, ami a WorkBench adatbázis felépítésének elméletéből és gyakorlatából áll.

fejezetben „Külföldi kulcs opciók” konfigurálja az idegen kulcs viselkedését, amikor a megfelelő mező megváltozik (FRISSÍTÉSBEN)és eltávolítása (TÖRLÉS BE) szülői rekord:

  • KORLÁTOZ– hibát jelez szülőrekord módosítása/törlése során
  • VÍZESÉS– frissítse az idegen kulcsot, ha a szülőrekord megváltozik, törölje a gyermekrekordot, ha a szülő törlődik
  • SET NULL– állítsa be az idegen kulcs értékét NULLA szülő megváltoztatásakor/törlésekor (nem elfogadható azoknál a mezőknél, amelyeknél a zászló be van állítva NEM NULLA!)
  • NINCS MŰVELET– ne csinálj semmit, de valójában a hatás hasonló a KORLÁTOZÁS-hoz

Mentés modellből valós/fizikai adatbázisba

"Fájl → Exportálás → Továbbító mérnök MySQL Create Script..."

Kipipáljuk a szükséges négyzeteket, nekem csak egy kellett. INSERT utasítások generálása táblázatokhoz. Ha fájlba kell mentenie a szkriptet, írja be a könyvtárat a fenti mezőbe.

A következő ablakban beállíthatja, hogy mely objektumokat exportáljuk. Ha jobban megnézi, csak 2 táblázatot hoztunk létre.

A parancsfájl végrehajtása - adatbázis és táblák létrehozása

Kattints a program bal felső sarkában található „ház” gombra...

Ezután kattintson duplán a MyConnection… elemre.

Ez a lap megnyílik előttünk...

Ez a kapcsolatunk a szerverrel, itt fogjuk végrehajtani a szkriptünket. Kérjük, vegye figyelembe, hogy a bal oldalon a WorkBench programban létrehozott adatbázisok láthatók.

Most ki kell adnia a parancsot a szkript végrehajtásához, ehhez kattintson a felső menü Lekérdezés végrehajtása (Összes vagy Kijelölés) parancsára.

Tehát, ha minden rendben van, akkor az alsó kimeneti ablakban látni fogja az összes „zöld pipát”. És amikor a Frissítés gombra kattint helyi menü az adatbázisok listájában az újonnan létrehozott adatbázis mydatabase1 jelenik meg.

Végül készítsünk egy ER diagramot. Az ER az Entity Relation rövidítése – egy sikeres „Entity-Relationship” modell, amelyet különösen Peter Chen fejlesztett ki. Tehát menjen vissza a modell fülre, és kattintson a Diagram hozzáadása gombra...

Létrehoztunk egy-a többhez kapcsolatot. Egy karon több hallgató is tanulhat. Kérjük, vegye figyelembe, hogy a Diákok táblázat közelében lévő kapcsolat megosztott - ez azt jelenti, hogy „sokak számára”.

Létrehoztunk tehát egy modellt, amiből a szkript végrehajtásával egy valós adatbázis táblákkal. És készített egy ER diagramot is.




Top