Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Хранение версий данных  [new]
FallenGameR
Member

Откуда:
Сообщений: 2
Клиенту нужно, чтобы в БД хранились все версии данных (жесткие требования безопасности). Все данные, которые вводятся, сохраняются, никогда не удаляются и могут быть получены из БД.

Вопрос - как это можно осуществить?
8 июн 09, 14:34    [7276678]     Ответить | Цитировать Сообщить модератору
 Re: Хранение версий данных  [new]
Le Peace
Member

Откуда: Москва
Сообщений: 8969
?
http://msdn.microsoft.com/ru-ru/library/cc280462.aspx
8 июн 09, 14:41    [7276734]     Ответить | Цитировать Сообщить модератору
 Re: Хранение версий данных  [new]
FallenGameR
Member

Откуда:
Сообщений: 2
Le Peace,

Да, спасибо, что-то в этом роде.
Насколько я понимаю, это добавили только в 2008 сервере.

В связи с этим вопрос - достаточно ли технология зрелая и насколько сильно ее требуется подточить напильником чтобы применить в реальном приложении?
8 июн 09, 17:14    [7277701]     Ответить | Цитировать Сообщить модератору
 Re: Хранение версий данных  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5499
Блог
FallenGameR
Клиенту нужно, чтобы в БД хранились все версии данных (жесткие требования безопасности). Все данные, которые вводятся, сохраняются, никогда не удаляются и могут быть получены из БД.
Создавать соответствующие структуры данных и хранить версии в удобном для вас виде.
Унивирсального решения нет - слишком много вариантов. :)
8 июн 09, 18:02    [7277987]     Ответить | Цитировать Сообщить модератору
 Re: Хранение версий данных  [new]
Crimean
Member

Откуда:
Сообщений: 13148
или аудит. то есть "в лоб" - хранение всех модификаций данных, но работа по текущим данным. вариант сложнее - "воспроизводимость" всех выборок на любой исторический момент - это сложнее, но тоже можно
9 июн 09, 09:24    [7279141]     Ответить | Цитировать Сообщить модератору
 Re: Хранение версий данных  [new]
Moriarti
Member

Откуда: Ultima Thule
Сообщений: 744
FallenGameR
Клиенту нужно, чтобы в БД хранились все версии данных (жесткие требования безопасности). Все данные, которые вводятся, сохраняются, никогда не удаляются и могут быть получены из БД.

Вопрос - как это можно осуществить?


На каждую таблицу заводится таблица истории с идентичными полями:
Table1: Table1_History

Пишутся тригеры OnUpdate, OnDelete по которым проводится запись в таблицу истории
Реализуется за полчаса.

P.S. Только из таблицы истории нужно убрать PK таблицы-источника, т.к. по одной записи в источнике может несколько событий в истории + в таблицу истории можно добавить нескольок сервисных полей, к примеру ВидМодифиакции: Insert/Delete/Update, ДатаМодификации, ну и свой PK
9 июн 09, 10:29    [7279416]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить