|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Serguei Tarassov 2:5020/400 28 Apr 2002 17:56:10 To : Oleg Bokanov Subject : Re: Принцип 4-х глаз --------------------------------------------------------------------------------
Дорогой наш товарищ Oleg
Hа запрос в комитет fido7.su.dbms от 28 апреля 2002 года, отправленного тов.
Oleg Bokanov к тов. Serguei Tarassov со всей партийной прямотой отвечаем:
OB> Со view и т.п. все более-менее понятно. Кстати, платформа - Oracle,
OB> так что возможностей хватит. Меня беспокоит немного другой вопрос -
OB> при реализации "принципа 4-х глаз" очевидно подразумевается, что
OB> неверифицированные данные должны быть "не видны" при большинстве
OB> действий и, кроме того, могут быть и неверифицированы, т.е.
OB> потребуется откат. Следовательно, необходимо как-то хранить и
OB> "действующие" и "новые" данные. Hу и разумеется аналогичные
OB> "тонкости" существуют при удалении. Фактически, существует две
OB> возможности -
OB> хранение в одной таблице или в разных. И в том и в другом случае
OB> возникают определенные трудности в отношении ограничений целостности
OB> - и первичные и внешние ключи. Если хранить действующие и новые в
OB> одной таблице, то несколько меняется подход к первичному ключу, да и
OB> внешние ключи при этом должны будут включать признак "верификации"
OB> очевидно. Hу и так далее...
Извини, не совсем понял проблемы. Если все приложения (в т.ч. и логика на
хр.процедурах) будут работать только через вьюшку, то все прозрачно. О
ключах сказать ничего не могу, пока неизвестна схема данных. Или ты имел в
виду, что действительные документы у тебя связаны с одной таблицей, а
недействительные - с другой? ИМХО это неправильно в принципе. Я бы выбрал
принцип хранения документов в одной таблице, подписей (верификаций) - в
другой а на них навесить несколько вьюшек. Если ключ у тебя естественный
(номер документа), то проблем при этом не возникает, при наличии
какого-нибудь DocumentID - тем более.
"Откат" реализуется простым удалением подписи(подписей) - при этом документ
становится видимым в одной вьюшке и невидимым в другой.
Если признак "действительный/недействительный" двоичный по логике, то можно
использовать битовое поле в таблицы "Документы" (для ускорения работы через
вьюшку) а его значение поддерживать триггером в соотвествии с изменениями
количества подписей в связанной таблице "Подписи".
Может я не понял твоей задачи?
--
с коминтерновским приветом участникам съезда
тов. Сергей (Тарасов)
mailto:serge@arbinada.com
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
--- ifmail v.2.15dev5
* Origin: Talk.Mail.Ru (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/6488cc87b1d3.html, оценка из 5, голосов 10
|