Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 16.12.2017
Сообщений: 97
1

Сбросить авто инкремент после удаления записи из бд

02.02.2021, 02:24. Показов 2008. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как сбросить авто инкремент чтоб после удаления записей записывало новую на id удалённой? Я нашел в интернете такой способ
SQL
1
DBCC CHECKIDENT (mytable, RESEED)
но как его применить к сайту и есть ли способ сделать это через Entity Framework?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.02.2021, 02:24
Ответы с готовыми решениями:

Создание триггера до удаления записи и триггера после удаления записи
Есть БД на рис. пишу триггер при удаление клиента что бы сначала до удаления удалилась таблица...

Обновление dataGrid сразу после добавления/удаления записи, а не после перезапуска приложения
Здравствуйте, написал в с# процедуры на добавление и удаления данных, при нажатии соответственных...

Почему при подклбчении через ODBC теряются авто инкремент
Subj

Автоинкремент после удаления последней записи
Здравствуйте. Имеется таблица на MySQL. Одно из полей (к примеру, Id) - автоинкрементируемое. ...

4
Эксперт .NET
12083 / 8391 / 1283
Регистрация: 21.01.2016
Сообщений: 31,641
02.02.2021, 02:26 2
Цитата Сообщение от BlackDreamm Посмотреть сообщение
Как сбросить авто инкремент чтоб после удаления записей записывало новую на id удалённой?
Зачем?
2
800 / 583 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
02.02.2021, 11:47 3
BlackDreamm,
... "сайт" подразумевает многопльзовательскую работу, да ..? .. а теперь представьте, вы пришли почистить базу, и сделали ей "ресид", а я в это время тихо, никого не трогая, редактирую какую-то запись, привязанную к старому Id, котрого после вашей чистки уже нет ... и как у пользователя у меня вопрос "Эй, админ, а почему у меня не обновляется?" ...
.. если вам нужны порядковые номера для документов, то создайте для этого отдельное поле и изменяйте его не автоинкрементом, а вычислительной процедурой, например ...
0
1144 / 853 / 262
Регистрация: 30.04.2009
Сообщений: 3,581
03.02.2021, 18:56 4
carrotik, RESEED не изменяет значения существующих Id, только смещает указатель автогенератора Id для новых записей. А так то да, занятие достаточно бессмысленное.
0
1217 / 808 / 244
Регистрация: 08.08.2014
Сообщений: 2,378
03.02.2021, 19:44 5
Это просто отличный способ наступить себе на хвост. И не только себе, но и, вероятно, каким-то внешним сервисам синхронизации, а ещё аналитикам, которые на эти ID могут ориентироваться в каких-нибудь своих сервисах/выборках.

Но если очень хочется лично пострадать, то решаются такие сомнительные задачи исключительно вручную:
1. Закрыть все подключения к базе, перевести её в однопользовательский режим, чтобы пока вы шаманите, никто другой с базой ничего не делал.
2. Самописным скриптом обработать ID согласно требуемой логике. Не забыв обо всех прочих сущностях, которые могут ссылаться на этот ID.
3. Желательно, перезапустить все сервисы, которые с этой БД работают (а то мало ли какая у них там реализация и что они могут кэшировать).
4. Вернуть базу в нормальный режим.

Но это всё равно не решит кратковременных проблем у одтельных пользователей (или внешних сервисов), которые могли запросить запись (в десктопный клиент или в браузер) на редактирование до начала процедуры, а сохранить запись пытаются после её завершения.
0
03.02.2021, 19:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.02.2021, 19:44
Помогаю со студенческими работами здесь

Ошибка после удаления последней записи в таблице
Здравствуйте, выходит ошибка после удаления последней записи в таблице сотрудники и попытке...

Не осуществляется выход из ЛК после удаления записи в MySQL
Здравствуйте! У меня такая проблема - изучала структуру готового интернет-магазина на php и mysql....

Переиндексация строк таблицы после удаления записи
Привет. форумчане! Мне необходимо, когда из БД данные выстраиваются в столбик, в каждой строчке...

После удаления записи сбивается номер по порядку
Всем привет! я использую номер по порядку DR_ID - который генерируется сам через триггер. Не...

Возвращение на предыдущую страницу после удаления записи из БД
Доброго дня уважаемые коллеги. Столкнулся с проблемой и очень нужна ваша помощь. Нахожусь на файле...

Автоматическое обновление DataGridView после удаления записи
Здравствуйте Подскажите решение задачи. На форме dgv и 2 button (одна подгружает данные в DGV,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru