Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Создание словарей / 17 сообщений из 17, страница 1 из 1
26.10.2005, 07:31
    #33343959
Yurman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Можно ли создавать словари состоящие из одного поля типа varchar или всетаки должно быть также числовое поле id с уникальным значением?

В моем случае есть таблица Анкета трудоустраиваемого, и таблица профессий
трудоустраиваемого(связь один ко многим). Список возможных профессий хранится в словаре. Мне кажется если записывать профессию как
varchar а не ее id поиск и выборки будут проще.
...
Рейтинг: 0 / 0
26.10.2005, 07:41
    #33343966
Карабас Барабас
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Храни с ID, меньше проблем будет, например, с каскадами. К тому же длина индексируемого поля ограничена.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.10.2005, 08:25
    #33343986
arni
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Вообще не понимаю, как могут быть справочные таблицы без ID. Как ссылочную целостность стороить?
...
Рейтинг: 0 / 0
26.10.2005, 08:33
    #33343996
Dik76
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Предлагаю тему перенести в проектирование.

--
Dik76

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.10.2005, 08:45
    #33344010
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
arniВообще не понимаю, как могут быть справочные таблицы без ID. Как ссылочную целостность стороить?Так у него и не будет никакой нахрен ссылочной целостности. Впору сказать "РТФМ нормализация".
...
Рейтинг: 0 / 0
26.10.2005, 09:24
    #33344081
Лентяй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
YurmanМожно ли создавать словари состоящие из одного поля типа varchar или всетаки должно быть также числовое поле id с уникальным значением?

В моем случае есть таблица Анкета трудоустраиваемого, и таблица профессий
трудоустраиваемого(связь один ко многим). Список возможных профессий хранится в словаре. Мне кажется если записывать профессию как
varchar а не ее id поиск и выборки будут проще.
Вот напринимает оператор кучу анкет, а затем вдруг заметит, что в твоем словаре вместо "Проктолог" написано "Практолог". И придется ему, бедному, все анкеты открывать и в каждой ашипку исправлять.
...
Рейтинг: 0 / 0
26.10.2005, 09:27
    #33344090
Гаджимурадов Рустам
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
ЛентяйИ придется ему, бедному, все анкеты открывать и в каждой ашипку исправлять.Нееее... зачем... Он собирается делать
Код: plaintext
Update Set ProktologField = 'Проктолог' Table Where ProktologField = 'Практолог'
...
Рейтинг: 0 / 0
26.10.2005, 09:43
    #33344126
Dik76
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Лентяй
Л> Вот напринимает оператор кучу анкет, а затем вдруг заметит, что в твоем
Л> словаре вместо "Проктолог" написано "Практолог". И придется ему,
Л> бедному, все анкеты открывать и в каждой ашипку исправлять.
Разве в этом дело? Вопрос о том, что лучше использовать: натуральные или искусcтвенные ключи постоянно обсуждается...
В данном случае использование наименования в качестве первичного ключа не целесообразно из-за необходимости создания каскадных
обновлений, что вызывает массовые апдейты.. А для FB есть еще и ограничение на размерность индекса.

2автар
Выборки от наличия искусственного ключа усложняются не на много, а в более сложных случаях, чем у тебя наоборот облегчают жизнь
(имею ввиду выбор м\у состовным первичным ключом или искусственным). Вопрос ты имхо задаешь из-за отсутствия знаний sql, поэтому
советую начать с его изучения.

--
Dik76

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.10.2005, 10:21
    #33344237
Лентяй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Гаджимурадов Рустам ЛентяйИ придется ему, бедному, все анкеты открывать и в каждой ашипку исправлять.Нееее... зачем... Он собирается делать
Код: plaintext
Update Set ProktologField = 'Проктолог' Table Where ProktologField = 'Практолог'

Я постарался объяснить разницу между двумя подходами. А как бороться с созданными собой же трудностями - это уже другая тема...
...
Рейтинг: 0 / 0
26.10.2005, 10:25
    #33344251
Лентяй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Dik76
Разве в этом дело? Вопрос о том, что лучше использовать: натуральные или искусcтвенные ключи постоянно обсуждается...
В данном случае использование наименования в качестве первичного ключа не целесообразно из-за необходимости создания каскадных
обновлений, что вызывает массовые апдейты.. А для FB есть еще и ограничение на размерность индекса.

Чего-то ты не о том... Имхо.
...
Рейтинг: 0 / 0
26.10.2005, 11:15
    #33344425
Dik76
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Лентяй
Л> Чего-то ты не о том... Имхо.


Список возможных профессий хранится в словаре. Мне кажется если записывать профессию как varchar а не ее id поиск и выборки
будут проще.
Из этого я понял, что у автора имеется справочник профессий,
но он не хочет сажать из него id, а хочет сажать name,
т.е. воспользоваться им как PK.

Может я конечно и не прав...

--
Dik76

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.10.2005, 11:15
    #33344427
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
не целесообразно из-за необходимости создания каскадных
обновлений

тю. а о дублировании значений такого естественного ПК в столбце FK ты подумал? Тут до каскадной прокто-логии даже не доходит.
...
Рейтинг: 0 / 0
26.10.2005, 11:22
    #33344450
Dik76
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
kdv
k> не целесообразно из-за необходимости создания каскадных
k> обновлений
k>
k> тю. а о дублировании значений такого естественного ПК в столбце FK ты
k> подумал? Тут до каскадной прокто-логии даже не доходит.
Вот я и хочу донести до автора все минусы.

--
Dik76

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.10.2005, 15:05
    #33345234
ModelR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
Можно. Но в Вашем случае непрактично.
Классификация, плюсы, минусы
...
Рейтинг: 0 / 0
26.10.2005, 15:07
    #33345246
mir
mir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
YurmanМожно ли создавать словари состоящие из одного поля типа varchar или всетаки должно быть также числовое поле id с уникальным значением?
В моем случае есть таблица Анкета трудоустраиваемого, и таблица профессий
трудоустраиваемого(связь один ко многим). Список возможных профессий хранится в словаре. Мне кажется если записывать профессию как
varchar а не ее id поиск и выборки будут проще.Судя по задаче, это будет относительно небольшая БД, с относительно низкой интенчивностью использования. Поэтому можете не бояться ни лишнего объема, ни каскадных апдейтов. Смело делайте ваш справочник без суррогатного PK. Получите тот плюс, что запросы попроще будут (на один JOIN поменьше). Другой вопрос, если б вы тряслись над объемом или если бы у вас была нужда в репликации между серверами, тогда однозначо -- суррогатный PK. А каскадные апдейты для справочников мало страшны, справочники по своему определению содержат очень редко меняемую информацию. Один раз в пятилетку поправят "практолог" на "проктолог" и все.
...
Рейтинг: 0 / 0
26.10.2005, 15:33
    #33345357
ModelR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
mir Один раз в пятилетку поправят "практолог" на "проктолог" и все.Не уверен. Знаю, что больницы держат специальных медицинских статистиков, которых сверху заваливают всевозможными формами и изменениями не меньше бухгалтеров.
...
Рейтинг: 0 / 0
26.10.2005, 17:09
    #33345736
Dik76
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Создание словарей
mir
m> Смело делайте ваш справочник без суррогатного PK.
Применительно к IB/FB можно легко наткнуться на ограничение размера индекса...

--
Dik76

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Создание словарей / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]