Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как сбросить AutoIncrement? При повторном вызове .Fill не обнуляются 
V
    Опции темы
Нов
Дата 7.9.2008, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 8.7.2008
Где: Украина г. Харько в

Репутация: нет
Всего: нет



Суть проблемы - я реализую добавление/удаление/модернизацию DataTable в ручную. Есть DataColumn "№" созданное в DataSet - В базе данных его нет. 
  Заполняю с помощью SqlDataAdapter.
При установке в конструкторе (либо в коде) его свойств: 
Код

 IDColumn.AutoIncrement = true;
 IDColumn.AutoIncrementSeed = 1;
 IDColumn.AutoIncrementStep = 1;

При первой загрузке все нормально. При втором заполнении DataSet, значения не обнуляются, а идут с того числа, которым заканчивались до повторного заполнения. 
 Итак вопрос - как обнулить значения AutoIncrement ?
 
PM MAIL ICQ   Вверх
bax
Дата 8.9.2008, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 63
Регистрация: 4.5.2007

Репутация: нет
Всего: 1



Dumayu nado napisat tak:

IDColumn.AutoIncrement = false;
IDColumn.AutoIncrement = true;
 IDColumn.AutoIncrementSeed = 1;
 IDColumn.AutoIncrementStep = 1;

no esli tak mojet vozniknut oshibka, chto unikalnost ne soblyudaetsya
esli zapis s takim nomerom ne sushestvuet vsyo buet normalno
PM MAIL   Вверх
Нов
Дата 8.9.2008, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 8.7.2008
Где: Украина г. Харько в

Репутация: нет
Всего: нет



Цитата(bax @ 8.9.2008,  15:02)
Dumayu nado napisat tak:



no esli tak mojet vozniknut oshibka, chto unikalnost ne soblyudaetsya
esli zapis s takim nomerom ne sushestvuet vsyo buet normalno


Код

IDColumn.AutoIncrement = false;
IDColumn.AutoIncrement = true;
 IDColumn.AutoIncrementSeed = 1;
 IDColumn.AutoIncrementStep = 1;

Пробовал - не помогает. Не сбрасывается  smile 
PM MAIL ICQ   Вверх
Idsa
Дата 9.9.2008, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(Нов @  7.9.2008,  22:06 Найти цитируемый пост)
Итак вопрос - как обнулить значения AutoIncrement ?

Насколько я знаю, в DataTable, как и в базе данных, обнулить Autoincrement-поле нельзя.

Цитата(Нов @  7.9.2008,  22:06 Найти цитируемый пост)
Есть DataColumn "№" созданное в DataSet - В базе данных его нет. 
  Заполняю с помощью SqlDataAdapter.

Не уверен, что поможет в этом случае, но можно попробовать поиграться с DataAdapter.MissingSchemaAction


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Нов
Дата 20.9.2008, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 8.7.2008
Где: Украина г. Харько в

Репутация: нет
Всего: нет



Проблему решил. Вот каким образом 
Код

if (InitComplete)
             charge.DataTableCharge.Columns.Remove(charge.DataTableCharge.Columns["№"]);
             DataColumn Number = new DataColumn("№", typeof(int));
             Number.Caption = "s";
             Number.ReadOnly = true;
             Number.AllowDBNull = false;
             Number.AutoIncrement = true;
             Number.AutoIncrementSeed = 1;
             Number.AutoIncrementStep = 1;            
             charge.DataTableCharge.Columns.Add(Number);

InitComplete - булево значение - первая загрузка или нет.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0803 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.