Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: VB 6.0 Проблема с добавлением новой записи Добавлено: 14.04.10 09:37  

Автор вопроса:  Максим
Помогите, пожалуйста. У меня такая проблема.
У меня в sql-сервере 2000 есть таблица со столбцом NUM с параметрами:
Allow Nulls - No
Data Type - int
Identity Specification - Yes
Identity Increment - 1
Identity Seed - 1
Indexable - Yes
При добавлении новой записи столбец NUM должен заполняться автоматически. Я добавил 10 записей, столбец NUM автоматически заполнился с 1 по 10. Но, как только я их все удалил, и начал добавлять записи, значение NUM стало 11 и выше. А мне надо чтобы значение было именно с той записи, которая идет следущая после удаления (в моем примере, если удалить все записи, значение NUM должно начинаться с 1, если удалить до 5 записи - то значение следующей должно быть 6 и т.д.) В чем проблема, как решить эту задачу?

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #1
Добавлено: 14.04.10 10:34
При автоинкременте так быть и должно. Он же не вкуривает, из середины ты удалил ил с конца. Заводи еще одно поле и пересчитывай номер каждый раз.

Ответить

Номер ответа: 2
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #2 Добавлено: 17.04.10 05:02
Средствами SQL Server задача не решается.
Можно отдельно хранить список удаленных ID, при удалении добавляешь этот ID в список. При создании новой записи - берешь новое значение из списка, если там пусто, то берешь самое большое в таблице, прибавляешь 1. Можно сделать на триггерах, в транзакциях

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам