muzruno.com

Много от взаимоотношенията: пример в Access, в SQL. Как да направите връзка "много към много"?

Всичко СУБД (системи за управление на бази данни)

Има няколко типа взаимоотношения между таблиците. Сред тях са отношенията "един към един", "един към много", "много към един" (някои са склонни да идентифицират тези два типа в едно) и много до много отношения. Пример за последното, обяснението и приложението му в различни СУБД, като Access или SQL, ще бъдат обсъдени в тази статия.

дефиниция

Връзката "много към много" се дефинира като съвпадаща с всеки от случаите на една от обектите на всички копия на другата. С други думи, всяко поле от първата (втората) таблица се свързва с всички полета от второто (първо).

Представената диаграма ясно показва същността на тази връзка.много от много отношения

Кога може да се използва много комуникация?

Пример за връзка "много към много" е студентска група и група учители. Всеки студент се учи от няколко професори, които от своя страна дават лекции на няколко студенти. Картината показва разликата между един към много и много към много.как да направите много към много отношения

Много-към-много често е необходимо при изготвянето на мащабни бази данни, малки илюстративни примери обикновено се използват само за образователни цели, в действителност, на практика се оказва, че колкото повече лица в базата данни и повече връзките между тях - толкова повече вероятността от честото прибягване до много от много нагласи.

Как да направите връзка "много към много"?

Примерите за тази връзка ще бъдат добавени в хода на статията, но е важно не само да се разбере какво представлява тя, но и как тя може да бъде приложена. Подробностите за този процес директно зависят от избраната за работа база данни, докато принципът остава един за всички.

Microsoft Access

Софтуерът на Office от Microsoft е известен на пазара на софтуер от доста време. Той се предлага с текстов редактор Worfd, процесор за електронна таблица в Excel и останалата част от "офисската" линия. Възможно е достъпът (да се чете като "достъп", буквален превод - "достъп") да се получи и отделно от неговите "колеги". Препоръчително е да купувате, разбира се, лицензиран софтуер, но не е тайна за колко пиратски пакети можете да намерите в мрежата под формата на редовни файлове или разпространение на торенти. "Microsoft Access" е достъпен дори и в преносим монтаж. Това, което не изисква инсталиране и специални умения за работа с компютър, е най-подходящо за избор, ако софтуерът не се използва дълго време и често.много до много примерни sql

От контекста става ясно, че "Microsoft Access" е система за управление на бази данни. И един от най-популярните. Това е релационна, което означава, че се основава на логика модел на данните, който в хода на работата му се отнася теория на множествата и логика от първи ред. Много комуникации в Access (примери ще бъдат дадени по време на обяснението) се изпълняват много, много просто. Помислете.

Има две маси ..

За да не измисляме нещо ново, нека вземем вече споменатото, за да изясним връзката "много към много" - пример за студентски орган. Необходимо е да се създаде таблица "Студенти" и таблица "Учители". Както в първия, така и във втория от тях има първични ключове. За да комбинирате копия на тези две единици, е необходима още една таблица, чиито полета са клавишите на първата и втората таблици.

Ако разгледаме друг пример: да кажем, играчите и отборите (понеже един от играчите са играли за различни отбори и всеки отбор има единадесет играчи в състава си), същността на изграждането на комуникацията няма да се промени. Също така ще са необходими три таблици. От тях "футболисти" и "отбори" като основен и един междинен.

Схема за данни

Връзките между таблици в базата данни на Microsoft Access се изпълняват чрез раздела Схема за данни. Полученият панел добавя всички необходими елементи (в този случай всичките три таблици). Създаването на взаимовръзка "много към много" ще се осъществи чрез две взаимоотношения едно към множество между основните ("Студенти" и "Учители") и междинната таблица. За да направите това, трябва да свържете съответните първични ключове.много комуникация в примерите за достъп



Илюстрацията по-горе показва как изглежда раздела "Схема с данни" (Relathionships). Броят на добавените таблици в панела е неограничен. Местоположението е напълно регулирано от потребителя.

SQL

Проектиране на бази данни по SQL - задачата е по-сложна, отколкото в "Достъп". Ако maykrosoftovskih продукт е напълно пригоден за офис среда, има огромен и с всяка нова версия и актуализира всички разтегателен функционалност, но в същото време удобно за прост потребителски интерфейс, SQL - това е отделен без процесуално език за програмиране, с което на различни платформи можете да работите с бази данни. Известен софтуер за тази задача: Oracle MySQL и DB2 (популярен, но не единствен по рода си). Въпреки факта, че всеки от тях има свои собствени финес и нюанси, езикът на SQL ги "обединява". След като се научих да работя с поне един от тях, ще бъде много по-лесно да се справяте с другия.

Създаването, попълването и прякото действие върху съществуваща база данни в SQL е необходимо чрез специални кодове или скриптове. Обаче, тези, които вече са достигнали до секцията "Много до много отношения", пример за което на този програмен език ще бъде предоставен по-долу, трябва да знаят поне основните команди и принципи за използване на SQL език.

Принципът на създаване на много от много отношения

Едно продължително въвеждане може да се окаже малко неудобно и "да улови мъгла", но всъщност комуникационният принцип остава същият. За да се реализира на практика комуникацията тип "много към много", не само в "Access", но и в SQL, първо трябва да създадете две основни таблици и една междинна таблица. По същия начин случаят е с ключовете: главните обекти имат основните полета, всеки от които е написан на таблицата с връзки. Какво означава, че множество SQL комуникации не се различават съществено от "Достъп".много до много примери

Изпълнение на комуникацията

За да реализирате комуникация от много до множество в SQL скриптове, използвате чужди ключове (FOREIGN KEY), подобни на оригиналните ключове в основните таблици. Те са написани заедно с всички полета, когато са създадени и / или редактирани.

Ролята на комуникацията от много до много

Като цяло отношенията между субектите в бази данни Те се използват за целостта на съхраняваната в тях информация. Само добре разработената база данни с всички необходими връзки гарантира сигурността на съхранението, удобството на работа и е структура, която е устойчива на външни влияния и промени. Обикновено, ако базата данни съдържа данни за цялата организация, фирма или фирма, тя съдържа много обекти с различни случаи.sql много от много отношения

И това означава, че при съставянето на схемата за данни (в "Accessory") или писането на скриптове (в Oracle или DiBiT) ще бъде налице поне една връзка "много към много". Пример за SQl, често използван при обучението на курса "Организация на база данни" - DB King.

Базата данни на Кинг

Тази база данни за обучение е информация за King`s Corporation. Сред таблиците:

  • служители на фирмата - съдържа идентификационния номер на служителя, фамилното име, името и средната първоначална (фокус върху чужди имена), също код за шефа и работника или служителя е заемал длъжността, датата на приемане на фирмите, които получават трудовото си възнаграждение и комисионна при условие, отдел код;
  • отдели на корпорацията - сред полетата на масата има код и името на отдела, както и кода на неговото разположение;
  • Поставяне на отдели, което включва въвеждане на информация за кода на настаняването и името на града;
  • позиции във фирмата - малка маса с две полета на кода на длъжността и официалното й име;
  • купувачи - полета: код на купувача и име, адрес, град и държава, пощенски код и код на областта, телефонен номер, код на мениджъра на обслужването на клиенти, кредит на купувача и коментари (бележки и бележки);
  • договори за продажба, съдържащи кода и датата на договора, кода на купувача, датата на доставката и общата сума на договора;
  • актове за продажба - кода на закона и кодекса на договора, който включва акта, кода на продукта, неговата цена, закупената сума и общата покупна цена;
  • стоки - кодът и името на продукта;
  • цени - кодът на продукта, обявената за него цена, най-ниската възможна цена, датата на установяване и датата на анулиране на цената.

Малките таблици, в присъствието на които не повече от две или три полета, се свързват с максимум една маса чрез отношения "един към един" или "едно към много".тип на много от взаимоотношенията

Scale същата маса, като "служители на фирмата", "фирмата-потребители", "договори за продажба" и "актове на продажбите" са свързани с няколко лица, като някои - с помощта на "посредници" много-към-много. Таблицата "самите фирми-купувачи" е посредник, тъй като тя има много полета, заимствани от други таблици и са външни ключове. Освен това мащабът и взаимното свързване на базата данни на "King Corporation" са такива, че всички отношения са неразривно свързани и взаимно се влияят. Унищожаването на поне един от тях ще доведе до унищожаване на целостта на цялата база данни.

Важни нюанси

Когато се осъществява комуникация "много към множество", независимо от това кой СУБД се използва, е много важно да се определят правилно ключовете, с които се прави връзката. Неправилно осъществява връзката не изпълни основната си цел, а именно - да се гарантира целостта на масата, и като резултат, вместо очакваното комфорт, потребителят ще получи, от друга страна, неудобството и допълнителни проблеми, особено видно по време на пълненето на редактиране на таблици и техните данни.

Споделяне в социалните мрежи:

сроден