Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Свойство IDENTITY [D7, MSSQL]


Страницы:   1 2 3

Patrick ©   (2004-04-14 11:36:00) 

Добрый день! Вопрос таков : есть у меня таблица FUELS, в ней 2 поля FuelCode (tinyint) и FuelName (char(10)), у поля FuelCode стоит свойство IDENTITY, проблема состоит в том, что добавляя новую запись INSERT INTO FUELS (FUELNAME) VALUES ('Новое значение'), вылезает ошибка по поводу дублирования ключа, хотя в других таблицах, где вроде бы все также всё в норме.


31512   (2004-04-14 13:42:00) [41]

Для Patrick
У меня была такая проблема. Я ещё успешно разрешил
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1080281412&n=1

ОТКАЖИСЬ ОТ IDENTITY, ПОСКОЛЬКУ DB КОМПОНЕНТЫ ПРИНЦИНИАЛЬНО НЕ ПОНИМАЮТ, ЧТО ЭТО ТАКОЕ.

Или пытай Romkinа, который говорит, чту у него есть друг, которому удалось подружиться с identity.


sniknik   (2004-04-14 13:40:00) [42]

если счетчик не срабатывает значит это не счетчик, проверил с тиниинт все работает.


Patrick   (2004-04-14 13:33:00) [43]

Поменял, ситуция та же, одну строчку добавляет нормально, а вторую ругается на дублирование ключа, такое впечатление, что счетчик не срабатывает.


bushmen   (2004-04-14 13:23:00) [44]

А заменить на тин INTEGER трудно? Давно бы уже проверил.


Patrick   (2004-04-14 13:18:00) [45]

Так что же в этом кривого такого, ежели не давать юзеру самому заносить значение кода, а пусть при добавлении само формируется, мож я чего то не понимаю, ты уж просвети?


Nikolay M.   (2004-04-14 12:32:00) [46]

Вместо того, чтобы устраивать ромашка "тоже - не тоже", лучше донеси народу мысль, чем оправдано использование в качестве IDENTITY именно типа tinyint?


Patrick   (2004-04-14 12:18:00) [47]

Счетчик, обнулял, а выполняя SELECT IDENT_CURRENT('FUELS') получил значение 0, разницей между данным случаем и другими работающими объектами является то, что там тип поля с IDENTITY не TINYINT, а INTEGER. Может в этом причина, хотя не должно быть.


bushmen   (2004-04-14 12:05:00) [48]

Попробуй выполнить insert из Query Analyser
И попробуй обнулить счетчик
dbcc checkident('MyTabel', reseed, 1)


A_N_D   (2004-04-14 12:04:00) [49]

Поставь IDENTITY SEED
SELECT IDENT_CURRENT('FUELS')


clickmaker   (2004-04-14 12:00:00) [50]


> хотя в других таблицах, где вроде бы все также

Значит все-таки не все также


Patrick   (2004-04-14 11:56:00) [51]

Это исключено, таблица пустая. А значения IDENTITY SEED и IDENTITY INCREMENT установлены в 1.


bushmen   (2004-04-14 11:46:00) [52]

А у тебя не превышено ли значение на тип tinyint ?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо