|
|
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Достаточно придерживаться ANSI ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 16:02 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Е-мое,Вам никак не угодить. :) Что такое "семантическая модель" и почему на ее основе не сделать контроль доступа и мои любимые конфиги (конкретный пример про проводки-зачем делать отдельный конфиг по суммам проводок ,если в качестве их источников можно использовать в моем понятии "модель предметной области" или "семантическую модель" или какую-либо другую)? По поводу доступа (я как смотрю, это и Ваша и моя любимая тема):ну зачем админу приложения объекты БД (в моем понятии это таблицы, процедуры) (если Вы посмотрите на любую систему контроля доступа - она же всегда в терминах предметной области).Так зачем ее отдельно хранить то:я это в толк взять не могу!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 16:07 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
> Что такое "семантическая модель" Имелась в виду онтологическая модель, извините. > почему на ее основе не сделать контроль доступа Потому что она решает абсолютно другие задачи. Вообще говоря, контроль доступа на основе онтологической модели возможен, но грамотная реализация - сложновата: в метамодели необходимо реализовать и стереотипы, и профили моделей. > зачем делать отдельный конфиг по суммам проводок А почему Вы меня об этом спрашиваете? Я утверждал, что конфиг никак не обязан быть связан с _метамоделью_. Как Вы будете конфигурировать Ваше приложение - это вопрос личных предпочтений и безопасности. > зачем админу приложения объекты БД Правильно, низачем. Я бы удивился, если бы узнал, что у Вас админ занимается вопросами ограничения доступа. > на любую систему контроля доступа - она же всегда в терминах > предметной области Не любая. Открываю умную книжку под названием "UNIX. Руководство системного администратора" и вижу, чтобы контекст прав - объекты файловой системы. Которые как бы никак не связаны с предметной областью. ;) В реальных приложениях целесообразно использовать аналогичный подход. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 16:54 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
ОДной из задач UNIX является работа с файлами-работа с файлами -предметная область контроля доступа. Я работаю в банковской области:работа со сделками-предметная область-следовательно ограничения на уровне атрибутов сделок и операций с ними. Под админом имеется в виду прикладной админ системы (а не БД или сети). Ладно, заканчиваю флейм,а то от (супер-полиндром вышел) исходной темы как всегда ушли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 17:05 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Сахават Юсифов guest_20040621> Думаю можно описать и хранить любые объекты и отношения. > Этой структуры должна хватит. ОК, пусть так. А насколько удобно это будет делать? Давайте предположим, что мы храним xml файл. Тогда в Вашей структуре данных мы должны: 1. сначала описать соответствующую метамодель, 2. в терминах этой метамодели описать модель, 3. в терминах модели описать файл. Imho три уровня абстракции в одной структуре данных - многовато. ;) Я думал про минимальную структуру. Можно как и было - объекты и отношения развести. А сгенерировать для каждого случая свое описание и хранилище - какая выгода. Лучше один раз разобраться механизмом навигации и компановки и забыть. Ну, Вы согласны или нет? А то мне работать надо. :) Жду Вашей оценки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 17:22 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
> ОДной из задач UNIX является работа с файлами-работа с файлами > -предметная область контроля доступа. Нет. В Unix практически всё - файлы, процессы, устройства и пр. - объекты файловой системы. И доступ к ним контролируется строго определенным образом. Независимо от того, чем занимаются пользователи сервера. ;) > предметная область-следовательно ограничения на уровне атрибутов > сделок и операций с ними. Нижний уровень контроля доступа - это элементарные объекты. Если речь идет о базе данных - проще всего говорить о row-level ограничениях (вообще говоря, никто нигде не определял элементарный объект; просто сложилось так, что row-level довольно просто организовать). Все остальные ограничения на нижнем уровне можно построить комбинацией базовых row-level ограничений. В Вашем приложении ограничения на нижнем уровне отсутствуют, - но это не значит, что их там быть не может. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 17:24 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
> Ну, Вы согласны или нет? Как минимальный набор сущностей - вполне возможно; у меня никогда не было такой задачи (построить структуру данных с минимальным набором сущностей и связей), так что ничего более конкретного сказать не могу. А если абстрактно - то представляется довольно сложной задачей упаковывать и извлекать из такой структуры данные. В этом отношении Ваша предыдущая схема мне кажется более удобной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 17:32 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
guest_20040621> Ну, Вы согласны или нет? Как минимальный набор сущностей - вполне возможно; у меня никогда не было такой задачи (построить структуру данных с минимальным набором сущностей и связей), так что ничего более конкретного сказать не могу. А если абстрактно - то представляется довольно сложной задачей упаковывать и извлекать из такой структуры данные. В этом отношении Ваша предыдущая схема мне кажется более удобной. Спасибо. Попробую так и эдак. Небось что-нибудь получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2006, 17:56 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
alter view add foreign key Programmer_OrtodoxДостаточно придерживаться ANSIВ какой СУБД? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2006, 11:15 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
ModelRalter view add foreign key Programmer_OrtodoxДостаточно придерживаться ANSIВ какой СУБД? Не слишком экзотической, чтобы участники форума могли проверить. Один из возможных кандидатов, Firebird, - бесплатен, поддерживает ANSI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2006, 12:26 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Programmer_OrtodoxНе слишком экзотической, чтобы участники форума могли проверить. Один из возможных кандидатов, Firebird, - бесплатен, поддерживает ANSI.Под рукой есть не слишком экзотический Oracle 9i, но даже в Oracle 10g2: View Constraints Oracle does not enforce view constraints. However, operations on views are subject to the integrity constraints defined on the underlying base tables. This means that you can enforce constraints on views through constraints on base tables. Notes on View Constraints View constraints are a subset of table constraints and are subject to the following restrictions: You can specify only unique, primary key, and foreign key constraints on views. However, you can define the view using the WITH CHECK OPTION clause, which is equivalent to specifying a check constraint for the view. View constraints are supported only in DISABLE NOVALIDATE mode. You cannot specify any other mode. You must specify the keyword DISABLE when you declare the view constraint. You need not specify NOVALIDATE explicitly, as it is the default.Т.е. только планировщику помогает, целостности - нет. В Firebird не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2006, 13:34 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Продекларированные в рамках выбранной СУБД фантазии должны быть настолько буйными, чтобы они могли быть откомпилированы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2006, 13:59 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Up (Все в ожидании, кады вже guest_20040621 перестанет бухтеть и надувацца и поделицца таки сокровенным знанием. А хотя бы схемки для размещения XML) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2006, 11:56 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
У меня есть смутные подозрения, что реляционную базу любого уровня сложности можно построить на одной таблице ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2006, 18:48 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Cat2У меня есть смутные подозрения, что реляционную базу любого уровня сложности можно построить на одной таблице Запросто. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2006, 22:25 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Cat2У меня есть смутные подозрения, что реляционную базу любого уровня сложности можно построить на одной таблице И сколько у Вас полей (минимум)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2006, 20:48 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Сахават Юсифов Код "таблицы" Код поля Тип поля Размерность Значение Строгих доказательств не имею. Нутром чую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2006, 21:56 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Cat2Сахават Юсифов Код "таблицы" Код поля Тип поля Размерность Значение Строгих доказательств не имею. Нутром чую Что за Код "таблицы"? Отношение не зададите! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2006, 23:45 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Сахават Юсифов. Вот, настырный. Любую таблицу можно преобразовать в вертикаль. Код поля Тип поля Размерность Значение Надеюсь, Вы с этим согласны? Это же "по Тенцеру" Для различия между разными сущностями нужно добавить только одно поле - которое я обозвал - код "Таблицы" ============ Этот тип баз будет называться "модель по cat2"! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2006, 00:15 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Cat2Сахават Юсифов. Вот, настырный. Любую таблицу можно преобразовать в вертикаль. Код поля Тип поля Размерность Значение Надеюсь, Вы с этим согласны? Это же "по Тенцеру" Для различия между разными сущностями нужно добавить только одно поле - которое я обозвал - код "Таблицы" ============ Этот тип баз будет называться "модель по cat2"! Эээээ! Нет никаких других сущностей! Одна ТАБЛИЦА, много сущностей и много отношений в этой таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2006, 00:19 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Cat2Сахават Юсифов Код "таблицы" Код поля Тип поля Размерность Значение Строгих доказательств не имею. Нутром чую Упушшение на блюда ю у васт: Кот "таблицы" --сучьность Кот записи --экземпляр сучности Кот поля Тип поля Размерность Значение ЗЗЫ однако тут не влезають ограничения . Можно какнешнешна на триггерах по Кот таблитцы накручивать. Но сложно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2006, 10:43 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
43210 Cat2Сахават Юсифов Код "таблицы" Код поля Тип поля Размерность Значение Строгих доказательств не имею. Нутром чую Упушшение на блюда ю у васт: Кот "таблицы" --сучьность Кот записи --экземпляр сучности Кот поля Тип поля Размерность Значение ЗЗЫ однако тут не влезають ограничения . Можно какнешнешна на триггерах по Кот таблитцы накручивать. Но сложно. Какие еще сучьности? Есть объект. У него есть список свойств. Свойства имеют список значений (хронологических). Получается дерево. Куча таких объектов дает граф (сеть). Что бы указать отношения между объектами создаем объект (отношение) и в свойствах этого объекта перечисляем объекты - субъекты отношения и собственные своства отношения. XML, блин. :) Если на нужна коллекция объектов с одинаковыми (или пересечение множества свойств) (Ваша сучьность), то выбираем все соответствующие объекты. Для идентификации отношений вводим тип объект или значение свойства=NULL (а можно по деревям лазить и ничего не вводить). Для целостности надо вводить коолекции "объект,тип" и "тип" и включить в типы "объект" и "свойство". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2006, 11:06 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Сахават Юсифов >>Эээээ! Нет никаких других сущностей! Одна ТАБЛИЦА, много сущностей и много отношений в этой таблице Я это и имею ввиду. Слово "сущности" мною было употреблено в смысле - существующие в реальном мире множества данных, которые должны учитываться в базе. Для перевода любой базы в однотабличную форму мы делаем ее котизацию. 1. Сначала переводим все таблицы в вертикальное представление (с) (на всякий случай. А то пристанут, что нет такого термина!) 2. А потом сливаем их в одну таблицу, вводя еще одно поле для идентификации таблицы. 43210. В Правилах не описано, каким образом должна обеспечиваться целостность данных. Можно и на тригерах. Сахават Юсифов 2 >>Какие еще сучьности? ... Получается дерево. Вы правы - дерево получается. Даже не дерево, а биоценоз. То, от чего и уводит реляционная модель. Которая, на мой взгляд, является разумным компромисом между объективно существующими сетевыми связями* объектов реального мира и удобством их представления для обработки в компьютере. ===== * Под сетевыми связями я понимаю, в меру своего умения читать книги, наличие множественного наследования ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2006, 12:03 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
Cat2Вы правы - дерево получается. Даже не дерево, а биоценоз. То, от чего и уводит реляционная модель. Которая, на мой взгляд, является разумным компромисом между объективно существующими сетевыми связями* объектов реального мира и удобством их представления для обработки в компьютере. ===== * Под сетевыми связями я понимаю, в меру своего умения читать книги, наличие множественного наследования Ладно, консенсус! А то будем до посинения как ЧАЛ сотоварищи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2006, 12:53 |
|
||
|
Модель данных по Тенцеру
|
|||
|---|---|---|---|
|
#18+
:) Если таблица одна, то зачем каждый раз писать select ... from TABLE where Сущность='C1' ... ? На то и СУБД, что бы упрощать жизнь, введем сокращение : select_ ... from C1 ... Опа, опять много таблиц получилось... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2006, 09:43 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33538097&tid=1542992]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
50ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 393ms |

| 0 / 0 |
