Mysql работната маса е за сите оператори. Брз почеток: Дизајн на визуелна база на податоци во MySQL Workbench. Додавање и уредување податоци

MySQL Workbench - софтвер, создаден за дизајн на база на податоци. Постои каталог на алатки за работа и моделирање на базата на податоци. Производот се карактеризира со високи перформанси.

Употребата на софтверот се препорачува за време на сложена транзиција. Табелите прикажуваат зачувани процеси и странски клучеви. Поддржана е интегрирана школка која ви овозможува да пишувате скрипти. Пред сè, програмата е дизајнерска алатка за визуелна графичка презентација. Постои уредник кој ви овозможува да ги прилагодите барањата и потоа да ги испраќате преку серверот. Прифатените одговори се претставени во форма на табели. Кога приказот е прикажан, корисникот сè уште има можност да прави уредувања.

Преземете ја целосната руска верзија на MySQL Workbench бесплатно од официјалната веб-страница без регистрација и СМС.

Системски барања

  • Поддржан оперативен систем: Windows 10, Vista, 8.1, XP, 7, 8
  • Длабочина на битови: 64 бита, 32 бита, x86

Веб програмер расте со проектите што ги создава и развива. Како што растат проектите, комплексноста на софтверот се зголемува, количината на податоци што ги обработува неизбежно се зголемува, како и сложеност на шемата на податоци. Комуникацијата со други веб-програмери покажува дека базите на податоци MySQL се многу популарни меѓу нас, а за управување со нив - добро познатите PHPMyAdmin. Преминувајќи од мали проекти до големи, од cms до рамки, многумина, како мене, остануваат верни на MySQL. Меѓутоа, за да се дизајнира комплексна база на податоци со голем број табели и врски, способностите на PHPMyAdmin многу недостасуваат. Затоа решив да напишам рецензија MySQL Workbench е одлична бесплатна десктоп програма за работа со MySQL.

Во првиот дел од прегледот, ќе зборувам за самите основи на работа со програмата, така што можете да го користите овој напис како водич за почетници.Вториот дел ќе биде посветен користејќи Workbenchво борба кога работите со далечински сервер. Во него ќе го дадам основното инструкциии препораки за поставување серверска врска и синхронизација со него.

MySQL Workbench- алатка за визуелен дизајн на бази на податоци која интегрира дизајн, моделирање, креирање и работа на база на податоци во единствена беспрекорна околина за системот за бази на податоци MySQL.

Морам да кажам дека програмата е навистина одлична. Тоа ви овозможува да фрлате брзо и со задоволство шеми за проектни податоци, дизајн субјекти и врскимеѓу нив, безболно спроведе промениво шемата и исто толку брзо и безболно синхронизирааттоа со далечински сервер. А графички уредник EER дијаграми, потсетувајќи на смешни лебарки, ви овозможува да ја видите целокупната слика на моделот на податоци и да уживате во неговата леснотија и елеганција :) По првиот обид, оваа алатка станува незаменлив асистент во борбениот арсенал на веб-програмер.

Преземете ја работната маса на MySQL

Дистрибуцијата MySQL Workbench е достапна на оваа страница. Најновата верзија на програмата во моментот на пишување е Верзија 6.1. Пред преземањето, мора да изберете една од следните платформи:

По изборот на платформа, од вас ќе биде побарано да се регистрирате или да се најавите на Oracle. Ако не сакате, има врска подолу. „Не, благодарам, само започнете го преземањето“- кликнете на неа ;)

Почеток на работа

Почетниот екран на програмата ги рефлектира главните области на нејзината функционалност - дизајнирање модели на бази на податоци и нивна администрација:

На горниот дел од екранот има список со врски со MySQL серверите на вашите проекти, а списокот со најновите модели со отворени податоци е на дното на екранот. Работата обично започнува со креирање на шема на податоциили вчитување на постоечка структура во MySQL Workbench. Ајде да се фатиме за работа!

Креирање и уредување на модел на податоци

За да додадете модел, кликнете на знакот плус веднаш до насловот „Модели“ или изберете „Датотека → Нов модел“ (Ctrl + N):

На овој екран, внесете го името на базата на податоци, изберете го стандардното кодирање и, доколку е потребно, пополнете го полето за коментари. Можете да започнете да креирате табели.

Додавање и уредување табела

Списокот на бази на податоци на проектот и списокот со табели во рамките на базата ќе бидат лоцирани во табулаторот „Физички шеми“.За да креирате табела, кликнете двапати на „+Додај табела“:

Ќе се отвори удобен интерфејс за уредување на списокот со полиња и нивните својства. Овде можеме да го поставиме името на полето, типот на податоци, а исто така да поставиме различни атрибути за полињата: додели поле примарен клуч (PK), означете го Не нула (НН), бинарен (BIN), единствен (UQ)и други, поставени за поле автоматско зголемување (AI)И стандардна вредност.

Управување со индекси

Можете да додавате, бришете и уредувате индекси на табели во јазичето „Индекси“интерфејс за управување со табели:

Внесете го името на индексот, изберете го неговиот тип, а потоа проверете ја листата на полиња кои учествуваат во овој индекс во потребниот редослед. Редоследот на полињата ќе одговара на редоследот по кој се штиклирани полињата. Во овој пример, додадов единствен индекс на полето корисничко име.

Врски меѓу табелите

Поставувањето странски клучеви и поврзувањето табели е можно само за табелите InnoDB(овој систем за складирање е стандардно избран). За управување со врските, секоја табела има таб „Странски клучеви“:

За да додадете врска, отворете го јазичето „Странски клучеви“ детска маса, внесете го името на странскиот клуч и изберете матична маса. Понатаму во средниот дел на јазичето во колоната Колонаизберете го полето за клуч од табелата за деца и во колоната Референтна колона- соодветното поле од матичната табела (типовите на полиња мора да се совпаѓаат). При креирање на странски клучеви соодветните индекси автоматски се креираат во детската табела.

Во поглавјето „Опции за странски клучни“конфигурирајте го однесувањето на странскиот клуч кога соодветното поле се менува (НА Ажурирање)и отстранување (НА БРИШЕЊЕ)родителска евиденција:

  • ОГРАНИЧИ- исфрли грешка при менување/бришење родителски запис
  • КАСКАДА- ажурирајте го странскиот клуч кога родителскиот запис се менува, бришете го записот за деца кога родителот е избришан
  • ПОСТАВЕТЕ NULL- поставете ја вредноста на странскиот клуч НУЛАпри промена/бришење родител (не е прифатливо за полиња на кои е поставено знамето НЕ НИШТА!)
  • НЕМА АКЦИЈА- не правете ништо, но всушност ефектот е сличен на ОГРАНИЧУВАЊЕ

Во примерот погоре, додадов во табелата за деца Кориснички профилстрански клуч за поврзување со матичната табела Корисник. Кога уредувате поле userIdи бришење позиции од табелата Корисникќе се направат слични измени автоматскисе јавуваат и со поврзани записи од табелата Кориснички профил.

Кога креирате проект, честопати треба да додадете податоци за стартување во базата на податоци. Тоа може да бидат основни категории, административни корисници итн. Во управувањето со табелите на MySQL Workbench постои таб за ова "Вметнува":

Како што може да се види од примерот, ако некоја MySQL функција треба да се примени на податоците пред да се запише во базата на податоци, тоа се прави со помош на синтаксата \func функција Име („податоци“), На пример, \func md5 („лозинка“).

Креирање на EER дијаграм (дијаграм за врска со ентитетите)

За да се прикаже податочната шема, ентитетите и нивните односи во графичка форма, MySQL Workbench има уредувач на дијаграми EER. За да креирате дијаграм на горниот дел од екранот за управување со базата на податоци, кликнете двапати на иконата „+Додај дијаграм“:

Во неговиот интерфејс можете да креирате и уредувате табели, да додавате врски од различни типови меѓу нив. За да додадете табела што веќе постои во дијаграмот на дијаграмот, едноставно повлечете ја од панелот „Каталошко дрво“.

За извоз на шема на податоци во графичка датотекаизберете „Датотека → Извези“а потоа една од опциите (PNG, SVG, PDF, PostScript датотека).

Увезување постоечка шема за податоци (од SQL dump)

Ако веќе имаме шема за податоци, таа може лесно да се внесе во MySQL Workbench за понатамошна работа. За да увезете модел од SQL-датотека, изберете „Датотека → Увези → Обратно инженерство MySQL Креирај скрипта...“, потоа изберете ја потребната SQL-датотека и кликнете "Изврши>"

MySQL Workbench исто така обезбедува увоз и синхронизација на моделот на податоци директно со оддалечен сервер. За да го направите ова, ќе треба да креирате поврзување Далечински пристапна MySQL, за што ќе зборувам во продолжение на оваа рецензија.

Демо-проектот од статијата е достапен за преземање на оваа врска. Ви посакувам успех и убави шеми со лебарки!

Со доаѓањето на програмата MySQL Workbench како дел од MySQL, процесот на креирање бази на податоци (DB) е значително поедноставен. На крајот на краиштата, она што претходно требаше да се направи рачно користејќи SQL скрипта и командна линија, сега може да се направи „во визуелен режим“ користејќи пријателски GUI.

Да го разгледаме процесот на креирање база на податоци користејќи MySQL Workbench подетално.

Сликата од екранот подолу покажува општ приказ на прозорецот на програмата MySQL Workbench.

За да креирате база на податоци, треба да кликнете со десното копче на левиот панел во областа со списокот со бази на податоци (означена како SCHEMAS) и во контекстното мениизберете „Креирај шема“.

После ова, ќе се појави таб во кој треба да го наведете името на новата база на податоци и да ги наведете параметрите за сортирање. Базата на податоци, на пример, ќе се вика mynewdatabase. Можете или да изберете опции за сортирање од паѓачката листа или да ги оставите оние што се стандардно понудени (во овој пример, стандардните опции се оставени).

После ова, за да продолжите со креирање на базата на податоци, кликнете на копчето „Примени“. Дијалошкото поле што се појавува ќе ја прикаже скриптата за создавање база на податоци генерирана од MySQL Workbench. Доколку е потребно, оваа скрипта може да се уредува директно во овој прозорец.

На врвот на прозорецот има онлајн DDL област. Тој е наменет за поставување параметри за извршување на скрипта. Овие параметри можат да бидат корисни при манипулирање со постоечка база на податоци. Кога креирате база на податоци, се препорачува да ги оставите стандардните вредности („Стандардно“).

Целта на оваа објава е да му помогне на почетниот програмер брзо да се навикне и да дизајнира едноставна база на податоци користејќи ја алатката за дизајн на визуелна база на податоци MySQL Workbench од Oracle и да го добие неговиот ER модел и SQL депонијата.

Па, помалку зборови и повеќе значење! Изгледпрозорец на програмата, делот „Моделирање на податоци“ изгледа вака:

За да отворите постоечки модел, кликнете на врската: Отворете го постоечкиот EER модел, за да креирате нов модел – изберете ја опцијата: Создадете нов EER моделЗа да креирате модел за врска со ентитет од постоечка база на податоци, кликнете на параметарот: Креирајте EER модел од постоечка база на податоци, и за да креирате EER модел од SQL скрипта треба да изберете: Креирајте EER модел од SQL скрипта.
За да креирате нов модел, користете ја врската Create New EER Model; откако ќе кликнете на него, ќе се прикаже прозорец со параметри:

Прво треба да креирате табели, за да го направите ова, кликнете на копчето Додадете табела, ќе се појави следнава форма:

Прво да создадеме табела корисници, кој ќе ги складира корисничките податоци систем за информации, на терен име на табелатавнесете го името на табелата во делот за форма КолониАјде да создадеме полиња за табела:
- Прво поле идќе содржи единствен кориснички број, поставете ги неговите својства: Автоматско зголемување, не нула, примарен клучИ Уникатно, Во поглавје Тип на податоциизберете цел број цел број.
- Второ поле фио, каде што ќе се складира ЦЕЛОСНО ИМЕ.корисник, поставете го полето за својство: Не Нулта, Примарен клуч, Во поглавје Тип на податоциизберете тип на низа ВАРЧАР 255 .
- Трето поле Логирај Се, ќе го содржи корисничкото најавување, мора да биде единствено, како полето ид, па ајде да му поставиме својство Уникатнои поставете го бројот на знаци во 255 .
- Следниве полиња: лозинкакоја ја содржи лозинката, e_mailкоја ја содржи адресата Е-поштаи поле типшто го содржи корисничкиот тип ќе биде без посебни својства, со тип на стринг ВАРЧАРдолго во 255 знаци освен последното поле типкој има доволно 45 ликови.
По завршените манипулации, формулар со името на табелата кориснициќе изгледа вака:

На дијаграмот ќе се појави табела корисницисо полиња и индекси:

Ајде да создадеме табела на сличен начин поставувањасо поставки за пристап до IS базата на податоци што содржи полиња ид, домаќинда го наведете името на домаќинот (адреса на серверот), db- име на базата на податоци, корисникИ лозинкасо корисничко име и лозинка за инсталирање на IS на оддалечен сервер.

Следно, користејќи го веќе познатиот метод, ќе создадеме табела продавници што ќе складираат податоци за продавници во полињата: идтип цел број– клуч, не-нула, единствен со поле за автоматско зголемување имезачувување на името на продавницата, поле адреса– неговата физичка адреса, поле тел- чувајте телефонски број, сајт– веб-страница и поле на онлајн продавница е-поштасо е-пошта на продавницата.

Потоа, ајде да создадеме табела производискладирање податоци за производите на продавницата во полињата: идтип цел број– клуч, не-нула, уникатен со автоматско зголемување, поле за име кое го чува името на продавницата, клуч, поле не-нулта од цел број shop_idзачувување на бројот на продавницата, поле type_idсо информации за бројот на производот од табелата на типови производи. Поле за бренд - бренд на производителот, 255 знаци, поле модел– со модел на производ, поле податоци– со податоци и карактеристики на типот на производот Тинитекст, Поле imgсо целосна адреса на сликата на производот, долга 255 знаци и полето за цена со цената на производот и гаранцијасо информации за гарантниот рок на производот, долг 45 знаци.

Табели што ги создадовме поставки, продавнициИ производиизгледа вака:

Следно ни треба табела во која се чува типот на производи Тип на производ, се состои од уникатно поле кое не е нула идсо автоматско зголемување на цел број и поле за уникатно име долго 255 знаци, кое го содржи името на типот на производот.

Табелата изгледа вака:

Последните две табели се нарачкиИ испораки, првиот содржи информации за нарачките на клиентите, а последниот содржи информации за испорака на производи.

Полиња за табела нарачки: идклуч, не-нула, уникатно поле од цел број со автоматско зголемување, поле shop_idшто го содржи бројот на продавницата - клучно поле кое не е нула производ_идзачувување на бројот на производот - клучно поле кое не е нула фио датумсо датум на нарачка – тип ДАТУМ, Поле квантитетсо број на нарачана стока – цел број тип, поле телсо телефонски број на клиентот - низа од 255 знаци и поле за потврда што содржи информации за потврда на нарачката - логичен тип.

Полиња за табела испораки: order_idсо број на нарачка - клуч, не-нула, единствено поле од цел број со автоматско зголемување, поле поле фиосо бројот на корисникот кој ја направил нарачката - клучно, целобројно поле без нула адресазачувување на адресата за испорака на стоката наведена од клиентот - стринг од типот на 255 знаци, поле времескладирање на саканото време на испорака на стоката - поле од типот на низа долга 255 знаци датумсо датумот кога клиентот ја направил нарачката - тип ДАТУМи булово поле потврдичување информации за испорака на стоки.

Табели нарачкиИ испоракиизгледа вака:

Односите на табелата

Создадовме база на податоци составена од седум табели, сега треба да ги поврземе табелите, веќе создадовме клучни полиња од типот на цел број, тие ќе станат основа за поврзување.
На пример, за поврзување на две табели производиИ Тип на производ, треба двапати да кликнете на левото копче на глувчето на дијаграмот со табелата со производи и да го изберете јазичето странски клучеви(странски клучеви), понатаму на теренот Име на странски клучвнесете единствено име за странскиот клуч, кликнете двапати на јазичето Референтна табелаи изберете ја табелата Тип на производ, потоа во формата лоцирана десно изберете го полето за референцирање type_idи изберете го полето од списокот што се појавува ид.

Така, двете полиња од табелата се поврзани, потоа треба да го поставите типот на врска помеѓу табелите, да отворите прозорец со кликнување на врската помеѓу табелите што се појавува и да го изберете јазичето Странски клучи во делот КардиналностИзберете го типот на поврзување еден-на-многу и затворете го прозорецот. Дијаграмот ќе ја прикаже врската помеѓу табелите:

На сличен начин, ги поврзуваме сите клучни полиња во табелите, така што тие се логички меѓусебно поврзани, потоа треба да се увериме дека дизајнираната база на податоци одговара на третата нормална форма.

Нормална форма- својство на врска во модел на релациски податоци, што го карактеризира од гледна точка на вишок, што потенцијално може да доведе до логички погрешни резултати од земање примероци или промена на податоците. Нормалната форма е дефинирана како збир на барања што една врска мора да ги задоволи.

Во релациониот модел, релацијата е секогаш во првата нормална форма по дефиниција на концептот на релација. Што се однесува до различните табели, тие можеби не се точни претстави на односите и, соодветно, можеби не се во првата нормална форма. Променливата на релација е во втора нормална форма, ако и само ако е во првата нормална форма и секој атрибут без клуч е нередуцирачки (функционално комплетен) зависен од неговиот кандидат клуч. Базата на податоци ќе биде во трета нормална форма ако се сведе на втора нормална форма и секоја колона без клуч е независна една од друга.

Така, нашата база е во трета нормална форма, бидејќи Секоја колона без клуч е независна една од друга. Ова е јасно видливо во дијаграмот на нашата база на податоци:

Повеќето табели се во врска еден-на-многу, со исклучок на табелите испоракиИ нарачкиво врска еден на еден, бидејќи испорачана, може да има само една нарачка, т.е. Една нарачка има само една испорака. Останатите врски се јасно наведени погоре.

Сега ајде да ја испратиме нашата база на податоци на серверот. За да го направите ова, креирајте нова врска со базата на податоци со кликнување на врската Нова врскаво прозорецот за почеток на програмата:

Потоа пополнете ги полињата во прозорецот што се отвора:

Наведете го името на врската во полето Име на врската, изберете го начинот на поврзување од списокот Начин на поврзување, поставете го името на домаќинот и портата во јазичето Параметри, наведете ги корисничкото име и лозинката доколку ги имате и кликнете на копчето ОК. Потоа отворете го јазичето Дијаграм EER, во панелот изберете ја ставката База на податоции кликнете на параметарот Напреден инженер:

Откако ќе се појави прозорецот, кликнете на копчето "Следно", изберете го параметарот Извези MySQL Табела Објектии притиснете го копчето "Следно":

Откако ќе кликнете на копчето, ќе се појави таб со SQL код, можете да го зачувате со кликнување на копчето „Зачувај во датотека“ако е потребно и потоа притиснете го копчето "Следно". Ќе се појави прозорец со параметри за поврзување:

Проверуваме дали параметрите за поврзување се точни и кликнуваме на копчето "Изврши", доколку SQL кодот не содржи грешки, тогаш по извршувањето на кодот ќе видиме прозорец со листа на табели, во спротивно ќе се прикаже порака за грешка. Сега нашата база на податоци е поставена на серверот.

Ви благодариме за вниманието, преземете ја самата програма.

UPD:

Некои жители на Хабра беа заинтересирани за можноста за прикажување линии за поврзување на маса во режим од поле до поле

по совет на еден од корисниците ќе дадам кратко објаснување како да го смените изгледот на врските и табелите, за да го направите ова треба да ја изберете следната опција во делот на менито Нотација за односи:

После ова, односите со табелата ќе ја добијат формата:

Исто така, можно е да го промените типот на табелите; за да го направите ова, треба да го проверите полето во горниот дел од менито и во следново Означување на објектот:

Вака изгледа табелата на дијаграмот прилагодена на стандардот IDEF1X:

Ви благодариме за вашите внимателни коментари!




Врв