тогда у тебя неизбежна ситуация с присвоением одинакового ключа таким образом...
Если два клиент одновременно, каждый в своей транзакции выполнят Select Max()+1 они получат одинаковый результат. Далее кто первый запостит - того и тапочки. Второй отвалится с ошибкой о нарушении уникальности ключа (если конечно такая есть, а если нет - нафик такой ключ?). Автоинкремент такую проблему устраняет... Дыры в значениях ни на что не влияют.
Глюк В ADO - Adotable перемешивает записи в таблице
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
- Игорь Акопян
- Сообщения: 1440
- Зарегистрирован: 13 окт 2004, 17:11
- Откуда: СПБ
- Контактная информация:

-
- Сообщения: 1228
- Зарегистрирован: 26 фев 2004, 13:24
- Откуда: Pietari, Venäjä
- Контактная информация:
Ты упустил еще то, что он считает аггрегатное значение перед каждым инсертом. В лучшем случае - это index scan и блокировка индексаИгорь Акопян писал(а):Если два клиент одновременно, каждый в своей транзакции выполнят Select Max()+1 они получат одинаковый результат. Далее кто первый запостит - того и тапочки.
2B OR NOT(2B) = FF
-
- Сообщения: 407
- Зарегистрирован: 13 сен 2004, 12:05
- Откуда: Курган
- Контактная информация:
счетчик незьзя обнулить кроме как удалением и созданием таблицы заново а этого делать нельзя.
Гы, я тут столкнулся с такой надобностью, из-за того что пользователь постоянно удаляет и добавляет записи, то последовательность теряется. А если мы создадим второе поле рядом - форматом "счетчик" то он автоматом перерасчитает все записи начиная с 1. Тогда второе поле можно просто удалить
Ну это я так, мимо проходил...
Гы, я тут столкнулся с такой надобностью, из-за того что пользователь постоянно удаляет и добавляет записи, то последовательность теряется. А если мы создадим второе поле рядом - форматом "счетчик" то он автоматом перерасчитает все записи начиная с 1. Тогда второе поле можно просто удалить

Чем проще - тем оригинальней, а значит гениально, т.к. все гениальное - просто!
Да! Кстати! Ctrl+V реально вставляет!!! ХDD

- Игорь Акопян
- Сообщения: 1440
- Зарегистрирован: 13 окт 2004, 17:11
- Откуда: СПБ
- Контактная информация:
Absurd, это уже для меня слишком глубоко
При похожей проблеме на Акцессе блокировки индекса не происходило... А вот одинаковые номера получались
Правда может народу не так много было...
Народ, а в чём проблема, что ID записи не непрерывен??? нафига эта проктология? Вы что по ID чёто вычисляете, он нужен только для идентификации записи в таблице - уникальный номер, никаких повторений с начала сотворения базы...

При похожей проблеме на Акцессе блокировки индекса не происходило... А вот одинаковые номера получались

Народ, а в чём проблема, что ID записи не непрерывен??? нафига эта проктология? Вы что по ID чёто вычисляете, он нужен только для идентификации записи в таблице - уникальный номер, никаких повторений с начала сотворения базы...
