Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подготавливаюсь к экзамену 
V
    Опции темы
Ak47black
  Дата 12.6.2010, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Здравствуйте.
Помогите пожалуйста разобраться с решением задач по СУБД.
У меня скоро экзамен, но вот этими понятиями у меня туговато (хотя много прочитал про них)
Есть пример экзамена, но незнаю правильные ответы
Цитата

1. Допустим, схема таблицы R(A, B, C) имеет три функциональные зависимости:
AB->C, A->B, B->A
Цитата

1.a. Укажите сколько и какие таблица R имеет ключи:

  • 1. Один ключ A.
  • 2. Один составной ключ AB.
  • 3. Два ключа: A и B.


Цитата

1.b. Находится-ли R в 3 нормальной форме?

  • 1. Да, так как нет первичных атрибутов, транзитивно зависящих от ключа.
  • 2. Нет, так как есть непервичные атрибуты, транзитивно зависящие от ключа.
  • 3. Нет, так как есть непервичные атрибуты, зависящий от части ключа.


Цитата

1.с. Транзакция это:

  • 1. Логическая целостность данных.
  • 2. Логическая еденица работы с даннными.
  • 3. Логическая еденица данных.


2.Допустим, для таблицы L(A, B, C, D) действуйют две функциональные зависимости:
AB->C, C->D

  • 1. Существует-ли функциональная зависимость BC->D? Почему?
  • 2. Составьте замыкание user posted image, для множества атрибутов BC.
  • 3. Составьте минимальное покрытие для множества функциональных зависимостей.
  • 4. Сколько ключей имеет L? Назовите их все.
  • 5. Находится-ли L во второй нормальной форме, почему?
  • 6. Находится-ли L в третей нормальной форме, почему?
  • 7. Находится-ли L в форме  Бойса — Кодда, почему?
  • 8. Составьте реляционную схему, соответствующая L и находящаяся в в форме  Бойса — Кодда.



Я бы ответил
1.a = 2
1.b = 1
1.c = 2

2.1 Нет, так как атрибут C функционально зависим так-же и от A.
2.2 Незнаю тут как-то (наверно на 2.1 неправильно ответил)
2.3 тоже незнаю толком
2.4 AB
2.5 Да, так как существует ключ однозначно описывающий каждую строку в таблице (например AB)
2.6 Нет, так как атрибут C находится в транзитивной зависимости
2.7 Нет, так как таблица минимум не находится в 3НФ
2.8 .... Незнаю даже с чего начать


БУДУ ОЧЕНЬ РАД ЕСЛИ КТОТО ПОМОЖЕТ  smile 
PM MAIL   Вверх
Данкинг
Дата 12.6.2010, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Транзакция - это, думаю, всё же логическая целостность данных. Остального не знаю. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Ak47black
Дата 12.6.2010, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Неа, только что нашел в википедии
Цитата

Транза́кция (англ. transaction) — в информатике, группа последовательных операций, которая представляет собой логическую единицу работы с данными.


Добавлено @ 17:06
Можете кто-нибудь пролить свет как тут быть с 2.1 (и со всеми остальными), просто на этот вопрос очень интересно узнать развёрнутый ответ  smile 

Это сообщение отредактировал(а) Ak47black - 12.6.2010, 17:07
PM MAIL   Вверх
Ak47black
Дата 12.6.2010, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Народ ну подтолкните
Никак немогу раскусить ....  smile 

Это сообщение отредактировал(а) Ak47black - 12.6.2010, 21:11
PM MAIL   Вверх
Gluttton
Дата 12.6.2010, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: 10
Всего: 54



Цитата(Ak47black @  12.6.2010,  16:30 Найти цитируемый пост)
1.с. Транзакция это:


    * 1. Логическая целостность данных.
    * 2. Логическая еденица работы с даннными.
    * 3. Логическая еденица данных.

Однозначно "2"!

Цитата(Ak47black @  12.6.2010,  17:01 Найти цитируемый пост)
Неа, только что нашел в википедии
Цитата

Транза́кция (англ. transaction) — в информатике, группа последовательных операций, которая представляет собой логическую единицу работы с данными.

Угу...

Например у нас есть БД описывающая дебетные карточки.
Так вот, когда пользователь дебетной карты совершает покупку в магазине и у него должна быть снята некоторая сумма денег и перечислена на счет магазина, то вот эти две операции объединятся в транзакцию.

Транзакция при этом выполняется либо полностью, либо не выполняется вообще.

Для чего это? Что бы не получилось, что сумма с карточки снимется успешно, а при добавлении этой суммы к счету магазина возникнет ошибка и операция не удастся. В таком случае получиться, что с карточки деньги сняты, а на счет магазина не поступили.
Для предотвращения таких нежелательных последствий мы можем объеденить две операции (уменьшение суммы карточки и увеличение счета магазина) в одну транзакцию и она тогда либо полностью выполниться, либо (если в процесе ее выполнения возникнут ошибки) будет полностью "откачена".


--------------------
Слава Україні!
PM MAIL   Вверх
Ak47black
Дата 12.6.2010, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Цитата(Gluttton @  12.6.2010,  23:00 Найти цитируемый пост)
Для чего это? Что бы не получилось, что сумма с карточки снимется успешно, а при добавлении этой суммы к счету магазина возникнет ошибка и операция не удастся. В таком случае получиться, что с карточки деньги сняты, а на счет магазина не поступили.
Для предотвращения таких нежелательных последствий мы можем объеденить две операции (уменьшение суммы карточки и увеличение счета магазина) в одну транзакцию и она тогда либо полностью выполниться, либо (если в процесе ее выполнения возникнут ошибки) будет полностью "откачена". 

У нас препод на эту тему отжигал.
Говорит один друг придёт к банкомату и будет снимать деньги, а другой друг в это время отключит его от розетки.  smile

Добавлено @ 23:09
Про реляционную алгебру нам объяснили, только как-то всеровно у меня туго.
Можете как-нибудь помочь  smile 

Это сообщение отредактировал(а) Ak47black - 12.6.2010, 23:09
PM MAIL   Вверх
Ak47black
Дата 12.6.2010, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Я вот на первый вопрос ответа точного ну никак немогу найти.
Вроде понятия ясны даже с разными трактовками, пробую листать книги которые имею, но вижу что не лезит.
Уже наверно глаз "замылинный" просто  smile 

Это сообщение отредактировал(а) Ak47black - 12.6.2010, 23:51
PM MAIL   Вверх
Ak47black
Дата 13.6.2010, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Можете  кто-нибудь хотя-бы может подсказать, как тут дело обстоит с 1.a.

Если я выбираю ответ 2, тоесть что ключ AB, то по идее AB однозначно описывает все атрибуты в таблице. В моём случае один атрибут C.
Только как быть с A и B по отдельности? (Случай напоминает антимонии Канторовское определение множества  smile )

Это сообщение отредактировал(а) Ak47black - 13.6.2010, 11:20
PM MAIL   Вверх
Zloxa
Дата 13.6.2010, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 11
Всего: 161



Цитата(Ak47black @  12.6.2010,  16:30 Найти цитируемый пост)
1.a

мне кажется ответ 3
если А однозначно определяет В а В однозначно определяет А то пара АВ как бы по любому уникальна.


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
Ak47black
Дата 13.6.2010, 18:36 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Мне все-таки кажется что AB, так имея AB мы можем определить оба A и B. Тоесть AB->A, AB->B

Добавлено через 10 минут и 18 секунд
Я вижу что с этими понятиями мало кто вообще разбирается  smile 
Может кто-то всётаки сможет что-то сказать?
(У меня завтра экзамен)
PM MAIL   Вверх
Gluttton
Дата 13.6.2010, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: 10
Всего: 54



Цитата(Ak47black @  13.6.2010,  18:36 Найти цитируемый пост)
(У меня завтра экзамен) 

Позновато вопросы задал smile ...

Цитата(Ak47black @  13.6.2010,  18:36 Найти цитируемый пост)
Может кто-то всётаки сможет что-то сказать?

Весь вечер медитирую над вот этой статьей и никак не могу дать ответ на вопрос 1.а.

Чисто интуитивно я склоняюсть к варианту "2", но:
- во-первых я себе такой вариант на практике не могу даже представить (т.е., когда А зависит от B, B зависит от A, С зависит от комбинации АВ, но при этом не зависит от А и В по отдельности при том, что каждому А соответствует уникальное В, а В соответсвтует уникальное А);
- во-вторых я тут вот, что подумал:
Цитата

(AB -> C) /\ (A -> B) = AAB -> CB =>
(AB -> C) /\ (A -> B) = AB -> CB =>
(AB -> C) /\ (A -> B) = A -> C

(AB -> C) /\ (B -> A) = ABB -> CA =>
(AB -> C) /\ (B -> A) = AB -> CA =>
(AB -> C) /\ (B -> A) = B -> C

Т.е. на основе данных функциональных зависимостей я вывел (но я ни капельки не уверен в том, что сделал это правильно) новые, которые позволяют считать правильным вариант ответа "3"!


--------------------
Слава Україні!
PM MAIL   Вверх
Gluttton
Дата 13.6.2010, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: 10
Всего: 54



Цитата(Ak47black @  12.6.2010,  16:30 Найти цитируемый пост)
1.b. Находится-ли R в 3 нормальной форме?

    * 1. Да, так как нет первичных атрибутов, транзитивно зависящих от ключа.
    * 2. Нет, так как есть непервичные атрибуты, транзитивно зависящие от ключа.
    * 3. Нет, так как есть непервичные атрибуты, зависящий от части ключа.


Цитата

Таким образом, отношение находится в 3NF тогда и только тогда, когда оно находится во 2NF и отсутствуют транзитивные зависимости неключевых атрибутов от ключевых. 

Источник.

В книге Томаса Коннолли "Базы данных" дано такое определение:
"3НФ - отношение, которое находится в 1НФ и 2НФ и не имеет не входящих в первичный ключ атрибутов, которые находились бы в транзитивной функциональной зависимости от этого первичного ключа."

Т.о. я считаю, что отношение находится в 3НФ. Но не потому, что "так как нет первичных атрибутов, транзитивно зависящих от ключа", а потому что "отсутствуют транзитивные зависимости неключевых атрибутов от ключевых".

Т.е. если ключ АВ, то транзитивной зависимости для С от неключевых атрибутов быть не может (их просто нет).
А если ключи А и В, то не смотря на то, что имеет место транзитивные зависимости А->B B->C и В->А А->С, то отношение все равно находится в 3НФ, т.к. среди А и В нет не ключевых атрибутов.

Но опять таки же - это всё домыслы smile .


--------------------
Слава Україні!
PM MAIL   Вверх
Gluttton
Дата 14.6.2010, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: 10
Всего: 54



Цитата(Ak47black @  12.6.2010,  16:30 Найти цитируемый пост)
2.Допустим, для таблицы L(A, B, C, D) действуйют две функциональные зависимости:
AB->C, C->D

    * 1. Существует-ли функциональная зависимость BC->D? Почему?
    * 2. Составьте замыкание user posted image, для множества атрибутов BC.
    * 3. Составьте минимальное покрытие для множества функциональных зависимостей.
    * 4. Сколько ключей имеет L? Назовите их все.
    * 5. Находится-ли L во второй нормальной форме, почему?
    * 6. Находится-ли L в третей нормальной форме, почему?
    * 7. Находится-ли L в форме  Бойса — Кодда, почему?
    * 8. Составьте реляционную схему, соответствующая L и находящаяся в в форме  Бойса — Кодда.


4. Т.к. AB->C, C->D, то воспользовавшись правилом транзитивности можем вывести функциональную зависимость: AB->D, т.о. в отношении один составной потенциальный ключ - АВ.
5. Да, т.к. нет частичных зависимостей неключевых атрибутов от части первичного ключа (т.е. нет зависимостей А->С, А->D, B->C и B->D). Т.е. все атрибуты не входящие в состав первичного ключа характеризуются полной функциональной зависимостью от этого первичного ключа.
6. Нет, т.к. в отношении присутствует транзитивная зависимость атрибута не входящего в состав первичного ключа от этого первичного ключа: AB->C, C->D (и не важно, что AB->D).
7. Нет, т.к. детерминант С (в контексте функциональной зависимости C->D) не является потенциальным ключем.
8. L1 {A, B, C}, L2{C, D}.


--------------------
Слава Україні!
PM MAIL   Вверх
Ak47black
Дата 14.6.2010, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Бррр, через несколько часов пойду сдавать smile  
Весь день вчера листал книги, а сегодня ещё Ваши посты прочитал.
Нус может повезёт  smile 
Спасибо Вам Gluttton, за поддержку и помощь. 
PM MAIL   Вверх
Gluttton
Дата 14.6.2010, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Начинающий
***


Профиль
Группа: Завсегдатай
Сообщений: 1170
Регистрация: 28.8.2008
Где: Феодосия

Репутация: 10
Всего: 54



Цитата(Ak47black @  14.6.2010,  09:37 Найти цитируемый пост)
Нус может повезёт

Надеюсь smile !

Цитата(Ak47black @  14.6.2010,  09:37 Найти цитируемый пост)
Спасибо Вам Gluttton, за поддержку и помощь.  

Незачто, лишь бы помогло!

Так все-таки чем всё кончилось. Хоть что-нибудь нам тут удалось угадать smile ?
Или...


--------------------
Слава Україні!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Общие вопросы по базам данных"
LSD
Zloxa

Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:

  • вопросам по СУБД для которых нет отдельных подфорумов
  • вопросам которые затрагивают несколько разных СУБД (например проблема выбора)
  • инструменты для работы с СУБД
  • вопросы проектирования БД
  • теоретически вопросы о СУБД

Данный форум не предназначен для:

  • вопросов о поиске разлиных БД (если не понимаете чем БД отличается от СУБД то: а) вам не сюда; б) Google в помощь)
  • обсуждения проблем с доступом к СУБД из различных ЯП (для этого есть соответсвующие форумы по каждому ЯП)
  • обсуждения проблем с написание SQL запросов, для этого есть форум Составление SQL-запросов
  • просьб о написании курсовой, реферата и т.п., для этого есть Центр помощи или фриланс биржа
  • объявлений о найме специалистов, для этого есть раздел Объявления о найме специалистов

Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение. ;)


Полезные советы:

При написании сообщения постарайтесь дать теме максимально понятное название. В теме максимально подробно опишите проблему. Если применимо укажите: название базы данных и версии (MySQL 4.1, MS SQL Server 2000 и т.п.); используемых язык программирования; способа доступа (ADO, BDE и т.д.); сообщения об ошибках.

Для вставки кода используйте теги [code=sql] [/code].

Литературу по базам данных можно поискать здесь.

Действия модераторов можно обсудить здесь.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | СУБД, общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0599 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.