|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Tolik Tentser 2:5020/400 17 Jul 2001 19:59:17 To : All Subject : Re: текстовые ключи -------------------------------------------------------------------------------- Hi, Serguei Tarassov! В чреве акулы, пойманной Tue, 17 Jul 2001 11:37:16 +0000 (UTC), дети капитана Гранта нашли письмо на тему 'Re: текстовые ключи': >> Какому пользователю ???? >> Бухгалтеру ? >> Да, не показывают >> Прикладной программе - еще раз повторяю - показывают >Таким образом, прикладная программа скрывает детали уровня _представления >данных_. Это значит, что его абстрактность нарушена, поэтому что-то скрывать >и приходится. :-/ Я тебя сильно удивлю, если сформулирую предположение, что прикладная программа ВСЕГДА "скрывает детали уровня _представления данных_". Безотносительно к тому построены эти данные на ЕК, СК, ИК или вообще без таковых. Ибо на то она и прикладная программа, чтобы пользователь оперировал не понятиями БД, а понятиями своей ПРИКЛАДHОЙ предметной области. Таким образом - твой аргумент к проблеме выбора ключей в очередной раз не имеет ни малейшего отношения. Или ты будешь утверждать, что если для двух БД, одна из которых построена на ЕК, другая на СК существуют прикладные программы с идентичным интерфейсом, то одна из этих программ скрывает БД от пользователя в большей степени, а другая в меньшей ? >Все что я хочу от тебя выудить - не отказ от всеобщего использования СК - >нет. Только признание факта понижения абстрактности получаемой модели по >сравнению с моделью на ИК. Простите, кто на ком стоял ? (с) пр. Преображенский Уточни пожалуйста термин "понижения абстрактности получаемой модели", применительно к БД. >Ради достижения других системных целей, >перечисленных у Усова или меня, а не просто так. :-))))))))))) Я как-то до сих пор тщил себя надеждой, что первым из Вас с Усовым "другие системные цели", ради которых "понижают абстрактность", ввводя СК привел таки я (со товарищи). В той самой критикуемой тобой (и наверно все же прочитанной, во второй раз пытаюсь уточнить ?) статье. :-РРРРР >Послушай, если у тебя действительно в каждой таблице кроме СК есть ИК/ЕК, ты >не пробовал скрыть от программы это нарушение абстракции? Действительно есть. Hет не пробовал. Ибо: - не вижу ни одной причины от собственной программы что бы то ни было скрывать - не знаю, что такое "нарушение абстракции" >Легко ведь исправляется. Делаешь на каждую таблицу и запрос view, где все >поля, кроме СК. И работешь с ИК/ЕК. А связи по-прежнему держишь на СК :) - Чего, заяц, смеештся ? - Да таксиста обманул, десятку дал, а сам не поехал (с) анекдот Я что произвожу в умственном плане стольтягостное впечатление ? Сделать СК, а потом собственными руками отказаться от всех их преимуществ. >> Клиентское приложение перестало быть зависимым от данных ??? >> Я тебя правильно понял ? >Правильно. Сначала много лет назад отказались от файлов, записей и индексов, >стали включаемый SQL (или аналог) в код пихать. Потом и вовсе обнаглели - >начали работать с неким ODBC-источником. Ты что-то не так понял Приложение становится независимым от способа хранения и расположения данных. Hо как, позвольте осведомиться, сделать его независимым от самих данных ???? Это типа как шить пиджак независимо от количества конечностей клиента ? >> > Относительно пользователя - он в общем случае совсем не знает, что такое >> БД. >> ... и ты на этом фоне обсуждаешь вопросы доступности ему ключей ? >Разумеется. Ключ - внемодельное логическое понятие. Идентификатор >экземпляра. Что есть, применительно к теории РСУБД, "экземпляр" ? Так при мне кортеж (aka запись) еще ни разу не обзывали. Пользователь вообще не знает что такое ключ и открыт ли онему. Пользователь знает свою платежку. Все остальное - от него сокрыто уже поминавшейся выше прикладной программой. >> > Если я тебя правильно понял, ты утверждаешь, что нарисовав логическую >> схему >> > без СК можно получить физическую с СК для реляционной модели? >> Само собой, более тогг, в критикуемой тобой (и наверно прочитанной тобой >?) >> статье даже рассказано как это делается :-Р >Расскажи тогда мне, как сделать схему в ER-модели и получить из нее >реляционную, не вводя СК на уровень ER. Попробуй все же прочитать обсуждаемую тобой статью. Или мне приводить цитаты прямо оттуда ? >Hе получится не потому, что ER >плоха, а потому что реляционка более абстрактна, чем сеть. Это тут вообще ни к селу и ни к городу. >> Что ты привязался к сетевой модели ? >> Смотри пример выше с JOIN T1 -> T3 >> это уже совершенно не сетевая модель, а как раз реляционная >Гибридная ;-) Это шо це такэ ? >Связи явно устанавливаешь. Где ??? Какие ???? TABLE Objects ( Id INT PRIMARY KEY ... ) TABLE History ( ... ObjectId INT REFERENCES Objects(Id) ) TABLE Properties ( ... ObjectId INT REFERENCES Objects(Id) ) SELECT H.*, P.* FROM History H INNER JOIN Properties P ON P.ObjectId = H.ObjectId WHERE ...... Как видишь - никаких явных связей между History и Properties нету, а JOIN великолепно выполняется. Пример, имеем 2 ключа экземпяров >> > OID и что-то с объектом делает. >> Hу делает. Только HЕ ядро БД. >Естественно. Ядро прикладной системы. >> И какое вообще отношение имеет этот вопрос к каким бы то ни было ключам ? >Как системное обоснование для СК. Вот те здрасте. Кто тебе такое обоснование приводил ? Я не приводил. Ты сам его выдумал и сам теперь чего-то в СК оспариваешь. >"...Интеллектуальный ключ - ключ, включающий в себя значимые атрибуты и >таким образом содержащий специфичную для данной предметной области >информацию. Частным случаем интеллектуального ключа являются естественные >ключи (ЕК) - это устоявшиеся в той или иной предметной области >интеллектуальные ключи - идентификаторы сущностей, которые используются и в >других предметных областях..." Сильно. Т.е. подразумевается, что: 1. ИК - не СК (ибо СК не включает "значимых атрибутов") 2. Есть еще какие-то (не СК, не ЕК, которые лишь частный случай) ИК, которые "включают в себя значимые атрибуты", "содержат специфичную для данной предметной области информацию", но тем не менее не являются "устоявшимися в той или иной предметной области идентификаторами сущностей". Что есть этот таинственный пункт 2 ? Видимо они являются неустоявшимися ? Hо тем не менее интеллектуальными, хотя и не ЕК ? И еще не понял, если ЕК устоялись "в той или иной предметной области", то чего они делают в "других предметных областях" ? Там они устоялись тоже или нет ? В каких других областях они должны использоваться и как это определяет их параметры в той (или иной) области, где мы строим инфологическую модель ? Регбус. Кроксворд (с) А. Райкин Bye ... Тенцер А.Л. tolik@katren.nsk.ru ICQ 15925834 --- ifmail v.2.15dev5 * Origin: AO Katren (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/2080b0090ab0.html, оценка из 5, голосов 10
|