Бази данни - Урок 3

Релационни бази данни, както знаем, се състои от таблици. Всяка таблица включва колони (по-нататък полета или атрибути) и редове (по-нататък записи или кортежи). Таблиците в релационни бази данни имат редица свойства. Основните от тях са следните:

  • Таблицата не може да бъде два еднакви редове. В математиката, на масата като това свойство се нарича една връзка - на английски връзка, откъдето идва и името - релационна.
  • Колоните са подредени в определен ред, който е създаден, когато създавате масата. В таблицата не може да бъде само един ред, но трябва да бъде най-малко една колона.
  • Всяка колона има уникално име (в рамките на една маса), както и всички стойности в една и съща колона имат един и същи тип (число, текст, дата.).
  • В точката на пресичане на всеки ред и колона може да бъде само атомен стойност (една стойност, която не се състои от група от стойности). Листове, които отговарят на това условие се наричат ​​нормализират.

  • Всичко ще бъде по-ясно с един пример. Да предположим, че искаме да се създаде база данни за форума. Форумът е регистрирал потребители, които създават теми и оставят съобщения в тези теми. Тази информация и трябва да се съхраняват в база данни.

    Теоретично, (на хартиен носител), можем да го всички уреди в една таблица, например:

    Но това противоречи на имуществото на валентност (една стойност в една клетка) и колони теми и съобщения приехме неограничен брой стойности. Така че, нашата маса трябва да бъде разделена на три: Потребителите на теми и съобщения.

    Нашите трапезни Членове отговаря на всички условия. Но темите на масата и съобщенията - не. След таблицата не може да бъде два еднакви редове, както и гаранцията, че потребителят няма да оставят две идентични съобщения, например:

    В допълнение, ние знаем, че всяко съобщение се отнася непременно до всяка тема. И как е възможно да се учим от нашите маси? Нищо. За решаването на тези проблеми, има ключове в релационни бази данни.

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

    Сега всеки запис в нашите маси уникални. Остава ни да се установи съответствие между темите и посланията в тях. Това се прави, също с помощта на първични ключове. Длъжностите от таблицата, ще добавят още на полето:

    Сега е ясно, че посланието, с идентификатор = 2 принадлежи на тема "На риболов" (ID = 4 нишки), създадена Вася, както и други съобщения, принадлежат към темата "На риболов" (ID = 1 теми), създадени от Кирил. Такова поле се нарича външен ключ (съкратено FK - външен ключ). Всяка стойност на това поле съответства на първичен ключ на "Теми" на маса. Това определя една кореспонденция между съобщения и теми, към които те се отнасят.

    Последно нюанс. Да предположим, че сте добавили нов потребител, и неговото име е Боб също:

    Нашата база данни е готова. Схематично може да бъде представен, както следва:

    В нашата малка база данни на трите плочи, и ако има 10 или 100? Ясно е, че просто не мога да си представя всички маси, полета и връзки, които ние може да се наложи. Ето защо дизайна на базата данни започва със своя концептуален модел, който да обсъдим в следващия урок.

    Ако този сайт е полезен за вас, можете да помогнете в развитието му като поставя една от тези връзки към вашия сайт.