Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2010, 15:00   #21
sergei64_89
Форумчанин
 
Регистрация: 20.04.2008
Сообщений: 139
По умолчанию

Например, нельзя будет отыскать всех заключённых, которые проходят по одной и той же статье.резкий довыд
sergei64_89 вне форума Ответить с цитированием
Старый 20.06.2010, 15:14   #22
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Такое чувство, что тебе это нафиг не нужно. Я тебе говорю, как нужно, а от тебя никакой отдачи. Такое чувство, что ты спросил лишь бы подтвердили, что у тебя всё отлично сделано и всё. Прости, врать не умею.
mMAg вне форума Ответить с цитированием
Старый 20.06.2010, 15:17   #23
sergei64_89
Форумчанин
 
Регистрация: 20.04.2008
Сообщений: 139
По умолчанию

SELECT DISTINCT номер
FROM статья;

правило 6.если степнь бинарной связи m:n то необходимо построить три отношения-по одному для каждой сущности и одно отношение связи.при этом ключ каждой сущности является первичным ключом соответствующего отношения,и входит в составной первичный ключ отношения для связи. в моём случае эта таблица выглядит также как и таблица статья.

Последний раз редактировалось Stilet; 21.06.2010 в 09:59.
sergei64_89 вне форума Ответить с цитированием
Старый 20.06.2010, 15:22   #24
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

ну, и что это у тебя будет? выведешь список номеров, а толку то? Я же говорю, что нельзя отыскать будет заключённых, которые сидят по какой-либо статье (например, мне нужно отыскать, кто проходит по 2 статье). Как ты это на своей бд будешь делать?
P.S. Ну, написано же, при этом ключ каждой сущности является первичным ключом соответствующего отношения. Где он там у тебя собственно... Это не твой случай между прочим... Здесь про создание промежуточных таблиц, насколько я понял, речь идёт.

Последний раз редактировалось mMAg; 20.06.2010 в 15:26.
mMAg вне форума Ответить с цитированием
Старый 20.06.2010, 15:29   #25
sergei64_89
Форумчанин
 
Регистрация: 20.04.2008
Сообщений: 139
По умолчанию

SELECT DISTINCT номер
FROM статья
WHERE статья=135;

что по твоему должно получиться как выглядеть это?

Последний раз редактировалось Stilet; 21.06.2010 в 09:59.
sergei64_89 вне форума Ответить с цитированием
Старый 20.06.2010, 15:37   #26
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

По твоему запросу я получу одно число: 135.
А я хочу получить список фамилий заключённых, которые проходят по статье.
Вот пример таблиц:
Заключённые : первичный ключ : ид_закл
поля: Имя
Фамилия
Закл_статья : первичный ключ : ид_закл
ид_статья
Статьи: первичный ключ: ид_статья
поля : описание
запрос:
Код:
select Имя, Фамилия
from заключённые
where ид_закл in (select distinct ид_закл from закл_статья
                                       where ид_статья=135)
mMAg вне форума Ответить с цитированием
Старый 20.06.2010, 15:51   #27
sergei64_89
Форумчанин
 
Регистрация: 20.04.2008
Сообщений: 139
По умолчанию

по моему запросу ты получишь их номера.
SELECT фамилия
FROM заключённый
WHERE номер in ( SELECT DISTINCT номер
FROM статья
WHERE статья=135);вот вариант твоего

хотя твой вариант мне понравился больше

Последний раз редактировалось Stilet; 21.06.2010 в 10:00.
sergei64_89 вне форума Ответить с цитированием
Старый 20.06.2010, 16:01   #28
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Стоп, а что такое у тебя номер и что такое статья?
Я вообще-то имел ввиду, что в поле статья хранится строка описания правонарушения. А поле номер просто номер статьи, причём уникальный. По сути то же самое, что и id у меня. А теперь я немного в замешательстве.
ММ, у тебя новые связи появились? я их не видел.
Стоп, а номер это номер заключённого и ты его как первичный ключ пометил? ) Ну, так можно на самом деле. Просто у тебя каждый заключённый будет сидеть по своему пранарушению, причём заполнение номера статьи будет проводиться вручную. Твоя таблица это промежуточная таблица у меня. У тебя всё правильно, просто не хватает ещё одной таблицы, в которой будет описание правонарушения. У тебя правильно, просто для пользования неудобно.

Последний раз редактировалось mMAg; 20.06.2010 в 16:05.
mMAg вне форума Ответить с цитированием
Старый 20.06.2010, 16:20   #29
sergei64_89
Форумчанин
 
Регистрация: 20.04.2008
Сообщений: 139
По умолчанию

новая схема
Изображения
Тип файла: jpg 1.JPG (72.2 Кб, 146 просмотров)
sergei64_89 вне форума Ответить с цитированием
Старый 20.06.2010, 16:33   #30
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Ну, с должностями та же история. Должна быть таблица должностей. Преобразование то же самое, которое и с таблицей статей.
А так вообще 3НФ здесь уже есть.
mMAg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
3 нормальная форма БД isida_ Microsoft Office Access 0 10.06.2010 20:27
обновление в блоге - Хуки в Windows. Часть третья. Оконные функции Pblog Обсуждение статей 1 04.01.2010 13:20
Нормальная ли температура компа ??? pavel42 Компьютерное железо 19 06.10.2009 01:08
Нормальная подсветка синтаксиса. Simply-Art Общие вопросы Delphi 4 08.12.2008 17:23
Третья, Интернет программа «Время отвечать» Alar Свободное общение 1 21.11.2008 21:27