Где хранится идентификатор? - PullRequest
1 голос
/ 13 февраля 2011

Я использую Elmah и Log4Net (с ADONetAppender), и они великолепны.Однако я заметил, что у обоих есть ключ идентификатора таблицы (увеличивающийся номер), который не сбрасывается в ноль, когда я очищаю их журналы.Откуда они получают это значение идентификатора?Кроме того, есть ли причина для столбцов log4net не использовать первичный ключ для значения идентификатора, или, скорее, у меня возникнут проблемы, если я добавлю его?

Ответы [ 2 ]

1 голос
/ 13 февраля 2011

Если вы используете Microsoft SQL Server, вы можете сбросить начальное значение столбца IDENTITY, используя оператор DBCC CHECKIDENT, например:

DBCC CHECKIDENT ( table_name, RESEED, new_reseed_value )

Например, чтобы сбросить ELMAH_Error Столбец IDENTITY таблицы со значением 1, которое вы используете:

DBCC CHECKIDENT ( ELMAH_Error, RESEED, 1 )

Счастливого программирования!

1 голос
/ 13 февраля 2011

Я подозреваю, что это директива auto increment для поля ID в базе данных, так как это значение не сбрасывается в ноль при удалении записей, только при сокращении (пожалуйста, исправьте меня, я не уверен насчет Это). Попробуйте перезапустить таблицу в базе данных напрямую, а не использовать инфраструктуру логгера.

...