Я работал с одним продуктом, где почти в каждой таблице были эти столбцы.Как разработчикам, нам постоянно приходилось присоединяться к таблице Users, чтобы узнать, кто создал запись, а в коде просто беспорядок.
Я разрабатываю новый продукт и снова думаю об этом.Это должно быть так?Очевидно, это хорошо знать, кто создал запись и когда.Но иметь 300+ таблиц, ссылающихся на одну и ту же таблицу пользователей, не очень хорошо ..
Как вы справляетесь с такими вещами?Должен ли я создавать столбец CreatedBy только на основных объектах, где он, скорее всего, необходим в пользовательском интерфейсе и чем заниматься объединением?Или я должен пойти и поставить его везде?Или, может быть, есть другая таблица «Аудит», где я храню все это и смотрю ее только по требованию (не каждый раз, когда сущность отображается в пользовательском интерфейсе)
Я просто беспокоюсь о аспекте производительности, когда каждый запрос пользовательского интерфейса будет поражать пользователятаблица ..
РЕДАКТИРОВАТЬ: Это будет база данных SQL Server 2008 R2