База даних

Тип работы:
Реферат
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

База даних являє собою файл спеціального формату, який містить інформацію, належним чином структуровану.

Більшість сучасних баз даних (БД) належить до реляційного типу. Реляційною називається база даних, у якій всі дані, що доступні користувачеві, організовані у вигляді таблиць, зв’язані між собою, а всі операції, що виконуються з даними, зводяться до дій із цими таблицями.

Таблиця складається з рядків і стовпців. Кожний стовпець містить дані одного типу. У базах даних рядки таблиці називають записами, а стовпці -- полями (рис. 3.1.1.).

Поля утворять структуру бази даних, а записи складають інформацію, що у ній міститься.

база таблиця ключ відношення

Теорія реляційних баз даних (БД) оперує з багатьма термінами і поняттями. Але в реальних системах управління базами даних (СУБД) часто щось спрощується, щось додається своє. Тому ми розглянемо тільки деякі основні, що реально будуть використані у проектах Delphi.

Таблиця

Таблиця — сукупність рядків і стовпців. Майже повна аналогія з таблицями на папері. Важливі уточнення: Кожен стовпець повинен мати ім'я, унікальне в межах конкретної таблиці. У теорії баз даних вважається, що рядки можуть іти в будь-якому порядку і не мають номерів чи якоїсь іншої ідентифікації. Хоча деякі СУБД й додають до кожного рядка номер, але при вибірці даних за допомогою SQL, у загальному випадку, їх одержати не можна. Тому до кожного рядка прийнято додавати якусь ідентифікацію — ключ, для того, щоб потім можна було легко знайти потрібну інформацію.

Відношення

У теорії БД розрізняють поняття таблиці і відношення. Наприклад, у відношенні не обумовлюється порядок стовпців, а тільки їх набір. Ще для відношень вводять певні обмеження, як неможливість мати два зовсім однакові рядки. Можна вважати, що розходження між ними полягає в наступному: відношення — абстрактне представлення інформації про об'єкти предметної області, а таблиця — більш конкретне. Але у першому наближенні у подальшому будемо вважати, що це те саме.

Ключі

Ключ — це набір стовпчиків, може складатися з одного стовпчика, чи охоплювати всі стовпчики таблиці. Ключ призначений для ідентифікації рядків таблиці. У теорії БД це єдиний спосіб послатися на рядок. Ключі бувають різні - потенційні, первинні, альтернативні, зовнішні, індексні, хеш-ключі, ключі сортування, вторинні ключі, ключі шифрування і розшифрування та ін. Але ми будемо розглядати тільки такі, що нам знадобиться в роботі над проектами.

Потенційні ключі. Потенційним ключем будемо називати таку комбінацію стовпців, що має наступні властивості:

· Унікальність. У таблиці немає двох різних рядків з однаковими значеннями в потенційному ключі. Таким чином буде забезпечено однозначність, наприклад, у процесі можливого пошуку за ключем.

· Ненадлишковість. Не можна забрати один зі стовпчиків із ключа, так, щоб ключ не втратив унікальності. Цим буде забезпечена своєрідна мінімальність інформації, що потрібна для пошуку.

Розглянемо, наприклад, таку таблицю:

Табельний №

Прізвище

Ім'я

По батькові

Посада

123 456

Мороз

Іван

Іванович

Декан

234 567

Зима

Петро

Іванович

Заступник

345 678

Снігуронька

Марія

Іванівна

Методист

У цій таблиці потенційним ключем може бути будь-який стовпець. Але вона буде розширюватися, тому з великою вірогідністю більшість стовпчиків не зможуть бути потенційним ключем, бо можливі збіги. Так, стовпчик Прізвище зможе виконувати цю функцію, якщо тільки ніколи не буде нових рядків у таблиці із тим же прізвищем. Можна взяти комбінацію прізвища і посади, хоча й тут є таж сама небезпека. Табельний номер також підходить на роль потенційного ключа. Як висновок зауважимо, що до кожної конкретної таблиці потенційних ключів може бути багато. Вибір потенційного ключа — справа програміста-розробника прикладної програми.

Первинні ключі. Первинний ключ — це один з потенційних ключів. Той, котрий під час аналізу та оцінки виявиться більш оптимальним. У простій реальній ситуації можна обрати табельний номер чи номер паспорта. Вибір табельного номера є більш надійним та професійним за умови, що ніколи не буде повторно комусь надано той же номер. Професіонал з БД додасть ще один поле — код, що гарантовано буде містити унікальне для кожного запису значення (це може бути лічильник). У Paradox такий тип поля називається AutoIncrement, у SQL Server є зразу 2 варіанти — TimeStamp та властивість Identity поля.

Альтернативні ключі. Первинний ключ може бути тільки один на всю таблицю. Після вибору первинного ключа з набору потенційних ключів, ключі, що залишилися, називаються альтернативними.

Зовнішні ключі. Коли створюється нова база даних, наприклад для нарахування зарплати, не варто всю інформацію про всіх працівників записати в одну таблицю (хоча можна було б зробити у такий спосіб, але це стане джерелом багатьох роблем). Якщо, наприклад, хтось із працівників згадується у такій таблиці не один раз (зарплата, премія, надбавки, вирахування, податки та ін.), то при зміні його/її прізвища треба буде провести зміни у всіх рядках (або ж як варіант забезпечити змінну кількість сповпчиків). Це незручно. Це є приводом розділити таку таблицю на кілька з метою оптимізації як обсягів даних, так і способів їх обробки. Тому доцільно створити дві таблиці:

Код працівника

Вигляд руху

Сума

1

Оклад

100

1

Премія

30

1

Податки

-25

2

Оклад

90

Код працівника

Прізвище

Ім'я

По батькові

1

Мороз

Іван

Іванович

2

Зима

Петро

Іванович

3

Снігуронька

Марія

Іванівна

ПоказатьСвернуть
Заполнить форму текущей работой