powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Помогите понят проектирование ключей по Джо Селко
10 сообщений из 10, страница 1 из 1
Помогите понят проектирование ключей по Джо Селко
    #34699663
sashenka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читаю книгу Джо Селко "Стиль программирования на SQL"
и там говориться про уникальность ключей в таблицах и что он тех кто реализует с помощью идентити называет идиотами.
Там описывается что типа ключем должен быть не инкремент а само значение представляющее из себя уникальность. С этим я с ним согласен но как спроектировать тогда связи
например(пока без ИД):
Имеем таблицу Словарь в которой есть поле Значение (тоесть само название словаря)
по идее ключ нужно строить по полю значение так как оно и есть олицетворение ключа(уникально--> ну по идее зачем иметь два одинаково называющихся словаря).
Затем создаем таблицу ЗначенияСловаря в которой есть столбцы: СсылкаНаСловарь, Значение
по идее ключ должен быть составным и захватывать два столбца так как уникальность значения дает словарь родитель и значение его записи(зачем иметь в одном словаре два повторяющихся значения).
Но вот как потом на значение из таблицы айтимов словаря дать ссылку из третьей какой нить таблицы + опять же поля текстовый что может привести к индексам большого размера ну и т.д
Кто в курсе правильности понимания организации такой структуры поделитесь опытом
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34699834
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sashenkaЧитаю книгу Джо Селко "Стиль программирования на SQL"
Выбросьте. Ну а если хотите, сделайте поиск по сайту - этот аспект этой книги обсуждался, и довольно подробно.

sashenkaИмеем таблицу Словарь в которой есть поле Значение (тоесть само название словаря)
по идее ключ нужно строить по полю значение так как оно и есть олицетворение ключа(уникально--> ну по идее зачем иметь два одинаково называющихся словаря).
Затем, что придется иметь их по жизни. Будет словарь Мюллера 2-го издания и будет словарь Мюллера 3-го издания. Будет словарь Мюллера в полноформатном (грубо говоря, A4) и обычном (грубо говоря, A5) вариантах. Будет словарь Мюллера издательства Аз и словарь Мюллера издательства Бука. И даже в самом издательстве Бука будет словарь Мюллера в красной обложке и словарь Мюллера в коричневой обложке.

sashenkaНо вот как потом на значение из таблицы айтимов словаря дать ссылку из третьей какой нить таблицы
Все правильно. Я видел БД, где таким образом дошли до ключей из не то двенадцати, не то пятнадцати полей. Маразм forever.
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34699839
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sashenka пишет:
> Читаю книгу Джо Селко "Стиль программирования на SQL"
> и там говориться про уникальность ключей в таблицах и что он тех кто
> реализует с помощью идентити называет идиотами.

И Целко туда же ? Ну ну...

> Но вот как потом на значение из таблицы айтимов словаря дать ссылку из
> третьей какой нить таблицы + опять же поля текстовый что может привести
> к индексам большого размера ну и т.д

Ну будет ссылка по составному ключу. Ничего страшного нет.
Или что - очень длинные ключи получаются ?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34700058
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sashenkaКто в курсе правильности понимания организации такой структуры поделитесь опытом
Теоретики, блин. Понимайте следующим образом. Должен быть уникальный ключ, который определяется предметной областью. Например, в справочнике номенклатуры - ее код. Должен быть также идентификатор записи (не важно, честный identity или sequence или еще как - зависит от реализации и здесь не принципиально, важно, чтобы он не менялся "слишком просто") для того, чтобы можно было как минимум просто ссылаться на таблицу по одному этому полю (в запросах, триггерах и т.п.). В 99% случаев эта логика работает безукоризненно и позволяет, как минимум, исправлять ошибки в значении ключевых полей и расширять их перечень без выполнения каскадных обновлений. А ссылаться на ЕК - практически всегда означает рыть себе или другим могилу, если можно заменить ссылку на него ссылкой на СК.
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34700085
sashenka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не спорю что Селко что то не договаривает так как в книге под данным высказыванием я не увидел примера реализации ссылочной целостности по его принципу, но так как чел вроде аторитетный подумал что сам что то недопонял.
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34700622
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sashenkaЯ не спорю что Селко что то не договаривает так как в книге под данным высказыванием я не увидел примера реализации ссылочной целостности по его принципу. Думаю что и не увидите. Или увидите что-то типа того, о чем говорил softwarer.

Суть высказываний Celko на тему id-отов состоит в том, что программисты
a) бездумно лепят identity, вместо того чтобы использовать "industry standarts"
b) полагают, что с помощью identity они нумеруют строки, т.е. в таблицах появляются "первая строка", "вторая строка" и т.п.
c) portability. Celko адепт программирования на чистом SQL, без использования специфики конкретной СУБД и надо признать, что умеет он это делать достаточно хорошо.

соответственно пинают Celko за пункты а) и c) и продолжается это уже много-много лет.
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34700675
Фотография johndes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не слышал про селко и не читал... но к подобным выводам не раз приходил... не хотел тратить время на развитие этих мыслей
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34701233
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer sashenkaЧитаю книгу Джо Селко "Стиль программирования на SQL"
Выбросьте. Ну а если хотите, сделайте поиск по сайту - этот аспект этой книги обсуждался, и довольно подробно.


На счёт аспектов, Вы про это? http://www.sql.ru/forum/actualthread.aspx?tid=374405
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34701365
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр Гладченко
(не глядя) Да, про это :)
...
Рейтинг: 0 / 0
Помогите понят проектирование ключей по Джо Селко
    #34702372
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это экстремисткое высказывание Селко полезно обдумать.
Модельный пример:
"В некотором царстве, некотором государстве жил-был царь".
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Помогите понят проектирование ключей по Джо Селко
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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