powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / способы записи в таблицу историю
25 сообщений из 220, страница 6 из 9
способы записи в таблицу историю
    #38780271
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУwinsky!пропущено...

я выше говорил, что решение хорошо в контексте пользователей базы. и я говорил, что в ТАКОМ случае - триггеры хороши (вы наверное пропустили).
если пользователь прилоэжения!=пользователь базы, то тут конечно триггеры уже не торты :)
Строить безопасность на уровне БД - опять беспощадное зло. Так что от хвоста - еще второй аргумент, что триггера зло. В распределенных системах безопасность можно строиться самыми разными способами. Особенно, если у нас фигурируют несколько СУБД, причем различных.
никто не строит безопасность на уровне БД. я этого не говорил.
вы описываете один сценарий. я - совсем другой. для вашего сценария треггеры - не айс. но кроме вашего есть другие сценарии
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780272
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!логирование изменений в таблице/таблицах - бизнес-лгика?
Причем, как правило, эта информация даже бизнесу важнее, чем админам. Видеть дерево изменений важного документа - почему это не бизнес логика? Очень удобная и важная функция.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780273
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!Алексей Кпропущено...
Не единственный, но лучше, чем добавлять поле в таблицу, как это предлагалось кем-то выше.
я не предлагал модифицировать исходную таблицу вообще.А я не про Вас, а про " кого-то другого ". :-)
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780276
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КТы опять ничего не понял. Про не идеальность мира тут уже писали.

значит картинка, всё таки в тему? :)
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780278
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУwinsky!логирование изменений в таблице/таблицах - бизнес-лгика?

Конечно.

ок. тогда конечно, транзакшн лог, например, - это сущность, относящаяся к бизнес-логике. да?
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780280
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей Кпропущено...
Код: sql
1.
delete from Log where LogDate < dateadd(day, -7, getdate())


И что? Всё нормально будет работать - будут доступна историческая цепочка записей в течении недели. Никаких противоречий.Ну как, если информация о текущей транзакции ссылается на информацию о предыдущей, которая удалена?
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780281
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!никто не строит безопасность на уровне БД. я этого не говорил.
Разве?

Код: sql
1.
SUSER_SNAME() <> 'super-mega-admin'



За твоего "сусера" уже нужно прибивать гвоздями к забору :)

winsky!вы описываете один сценарий. я - совсем другой. для вашего сценария треггеры - не айс. но кроме вашего есть другие сценарии
У нас один сценарий. Архитектура безопасности приложений, история изменений бизнес данных. Вроде никто о доярках и коровьих надоях не офтопит.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780282
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!ну-ну. выдохните, и скажите, что такое бизнес-логика в вашем понимании

что значит, в моём? есть общепринятое понимание, моё ни чем не отличается, так как я пользуюсь общим.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780283
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУwinsky!логирование изменений в таблице/таблицах - бизнес-лгика?
Причем, как правило, эта информация даже бизнесу важнее, чем админам. Видеть дерево изменений важного документа - почему это не бизнес логика? Очень удобная и важная функция.
вот опять - вы описываете совсем отличный от моего сценарий.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780284
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КТы опять ничего не понял. Про не идеальность мира тут уже писали.

значит картинка, всё таки в тему? :)Согласен. :-)
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780288
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttwinsky!ну-ну. выдохните, и скажите, что такое бизнес-логика в вашем понимании

что значит, в моём? есть общепринятое понимание, моё ни чем не отличается, так как я пользуюсь общим.
конечно есть. вот исходя из описанного мной сцеанария и определения бизнес-логики я не считаю что данные область относится к бизнес-логике.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780289
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КСогласен. :-)

а вообще, мы все сегодня молодцы! вот:
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780292
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КМСУпропущено...
И что? Всё нормально будет работать - будут доступна историческая цепочка записей в течении недели. Никаких противоречий.Ну как, если информация о текущей транзакции ссылается на информацию о предыдущей, которая удалена?
Ну хватит тупить, а? :) Текущая не ссылается на предыдущую! Транзакция ссылается на документ . Дерево строится на иерархии дат.

Еще раз.

1. Таблица документов - Documents (DocumentId, Value1, Value2)
2. История - DocumentsHistory (DocumentId, Value1, Value2, Date, UserId, OperationId)

Всё. Тут нету даже ключа DocumentsHistoryId, он и не нужен. Битых ссылок быть не может априори. Документы из Documents физически удалять нельзя, только маркировать удалением.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780295
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!hVosttпропущено...


что значит, в моём? есть общепринятое понимание, моё ни чем не отличается, так как я пользуюсь общим.
конечно есть. вот исходя из описанного мной сцеанария и определения бизнес-логики я не считаю что данные область относится к бизнес-логике.

нужно определиться, эта история или логирование.. это часть бизнеса или нет? лог будет отображаться в интерфейсе пользователя? им можно как-то из программы управлять? например, отключать? или менять логику записи/ведения истории? если да, то триггеры зло.

если же это историческое логгирование живёт само по себе и никакой связи с приложением нет, то можно и триггеры. даже нужно.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780296
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttАлексей КСогласен. :-)

а вообще, мы все сегодня молодцы! вот:

Не только сегодня. Всю неделю дотнетные топики в топе. :-)
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780299
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttесли же это историческое логгирование живёт само по себе и никакой связи с приложением нет, то можно и триггеры. даже нужно.
И даже в этом случае не нужно.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780301
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КhVosttпропущено...


а вообще, мы все сегодня молодцы! вот:

Не только сегодня. Всю неделю дотнетные топики в топе. :-)

хм, ну мы тогда всю неделю молодцы теперь можно и пивка
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780302
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУwinsky!никто не строит безопасность на уровне БД. я этого не говорил.
Разве?

Код: sql
1.
SUSER_SNAME() <> 'super-mega-admin'



За твоего "сусера" уже нужно прибивать гвоздями к забору :)

winsky!вы описываете один сценарий. я - совсем другой. для вашего сценария треггеры - не айс. но кроме вашего есть другие сценарии
У нас один сценарий. Архитектура безопасности приложений, история изменений бизнес данных. Вроде никто о доярках и коровьих надоях не офтопит.
МСУ, давайте без гвоздей. просто порассуждайте. представье, что используется только windows аутентификация, пользователь всегда известен в контексте запроса... чем плохо-то? аргументируйте.
аргумент - это плохо потому что плохо и где мои гвозди - не катит
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780303
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУhVosttесли же это историческое логгирование живёт само по себе и никакой связи с приложением нет, то можно и триггеры. даже нужно.
И даже в этом случае не нужно.

ну тут уже зависит от степени придроченности ко всяким T-SQL/PL-SQL, некоторых знаешь ли не оторвёшь
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780305
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!что используется только windows аутентификация

сегодня только Windows, а завтра прикрутили двух-факторную на внешнем сервере.. и что делать? всё тут же отвалилось? ну уж нет.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780306
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей Кпропущено...
Ну как, если информация о текущей транзакции ссылается на информацию о предыдущей, которая удалена?
Ну хватит тупить, а? :) Текущая не ссылается на предыдущую! Транзакция ссылается на документ . Дерево строится на иерархии дат.

Еще раз.

1. Таблица документов - Documents (DocumentId, Value1, Value2)
2. История - DocumentsHistory (DocumentId, Value1, Value2, Date, UserId, OperationId)

Всё. Тут нету даже ключа DocumentsHistoryId, он и не нужен. Битых ссылок быть не может априори. Документы из Documents физически удалять нельзя, только маркировать удалением.Ну какая разница, как строится цепочка транзакций, привязанных к документу, через явную ссылку DocHistoryID, или через DocID + LogDate.

Верь мне!
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780314
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttwinsky!что используется только windows аутентификация

сегодня только Windows, а завтра прикрутили двух-факторную на внешнем сервере.. и что делать? всё тут же отвалилось? ну уж нет.
с какого бодунища, простите? я же вам говорю, не пытайтесь сильно абстрагироваться - есть конткретно окружение, оно не изменится в обозримом будущем. в этом окружении и при описанном мною сценарии все работает просто прекрасно. это просто проверено. это НЕ универсальное решение. И, например, проектируя абсолютно новую систему, я бы врядли использовал такой подход. Но таки он имеет право на жизнь.
я просто противник абсолютизма. есть у триггеров ниша своя...
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780317
winsky!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сегодня, пятницо, кстати.
МСУ, какдила? :) я давно не заходил сюда...
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780318
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
winsky!МСУ, давайте без гвоздей. просто порассуждайте. представье, что используется только windows аутентификация, пользователь всегда известен в контексте запроса... чем плохо-то? аргументируйте.
аргумент - это плохо потому что плохо и где мои гвозди - не катит
Ок. Сейчас используется только windows аутентификация. Потом еще попросится формс аутентификация. Потом роли. Роли в базе храним. А потом хук с правой, выкинули MS SQL и купили Oracle. В случае с безопасностью уровня сервере приложений - нам пох. В твоем варианте задача не выполнимая.
...
Рейтинг: 0 / 0
способы записи в таблицу историю
    #38780319
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttМСУпропущено...

И даже в этом случае не нужно.

ну тут уже зависит от степени придроченности ко всяким T-SQL/PL-SQL, некоторых знаешь ли не оторвёшь
Отрываем с помощью молотка и лома. Ну ты знаешь :)
...
Рейтинг: 0 / 0
25 сообщений из 220, страница 6 из 9
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / способы записи в таблицу историю
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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