Форум: "Базы";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];
ВнизKey Violation. Что вызывает эту ошибку, Найти похожие ветки
← →
Term (2003-07-16 11:42) [0]Key Violation. Что вызывает эту ошибку, нарушение первичного ключа или еще чтото?
← →
Anatoly Podgoretsky (2003-07-16 11:46) [1]Так и переводится Нарушение ключа, но не обязательно первичного, сюда относятся и уникальные индексы
← →
Term (2003-07-16 11:49) [2]а последовательность DeleteIndex и AddIndex спасёт ситуацию?
← →
Соловьев (2003-07-16 11:51) [3]
> а последовательность DeleteIndex и AddIndex спасёт ситуацию?
посмотри, может ты добавляешь в поле данные, которые повторяются, а у тебя поле уникально.
← →
Term (2003-07-16 11:57) [4]нет есть только первичный ключ по автоинкрементному полю, таблица нискакой другой не связанна, было всё нормально но вдруг при добавлении записи стало вылетать выше указанное сообщение
← →
Term (2003-07-16 11:58) [5]БД Парадокс
← →
ZrenBy (2003-07-16 12:00) [6]удали это поле и создай заново
← →
msguns (2003-07-16 12:05) [7]Таблица, где вылетают ключи, не является ли детальной ?
← →
Term (2003-07-16 12:05) [8]Именно поле? а пересоздать ключ не поможет?
← →
Term (2003-07-16 12:06) [9]да к тому же если ситуация повторится по полю связи? его то удалять никак нельзя
← →
Term (2003-07-16 12:09) [10]нет таблица не детальная, это в проге просто справочник, в который заносятся значения и иногда берутся данные для подстановки, она ни с какой другой таблицей не связанна, но дело не в этом меня интересует как с этим бороться вообще, чтобы в прогу встроить механизм которыый бы решал эту проблему
← →
Anatoly Podgoretsky (2003-07-16 12:10) [11]Говорили же, не использовать Парадокс, а если используешь, то не использовать в качестве связи автоинкриментные поля, получишь по самые помидоры.
← →
ZrenBy (2003-07-16 12:11) [12]В таблице сбился автоинкремент.
Для парадокса это стабильная ситуация.
Я в свое время напрочь отказался от этого глюкавого автоинко
и использовал псевдо-GUID
← →
Term (2003-07-16 12:17) [13]
> использовал псевдо-GUID
поясни подробнее плиз
← →
Anatoly Podgoretsky (2003-07-16 12:20) [14]ZrenBy © (16.07.03 12:11)
Использовать конечно можно, но не в качестве связи, это самоубийство.
← →
ZrenBy (2003-07-16 12:20) [15]Ну, я в качестве первичного ключа использовал char(12)
и генерил на клиенте эти псевдо-уникальные и неповторяющиеся
12 символов
← →
ZrenBy (2003-07-16 12:22) [16]>>Anatoly Podgoretsky © (16.07.03 12:20)
согласен
← →
Term (2003-07-16 12:28) [17]понятно спасибо
← →
MsGuns (2003-07-16 12:31) [18]>ZrenBy © (16.07.03 12:20)
>Ну, я в качестве первичного ключа использовал char(12)
и генерил на клиенте эти псевдо-уникальные и неповторяющиеся
12 символов
Жаль, что только 12, а не 120 или 255 ;))
Саму же ситуацию "выталкивания" (именно так надо понимать англ.слово Violation), т.е. физическое отторжение дубликата ключа как средство поддержания целостности БД, можно проверять либо перед постингом (с помощью метода LookUp, например), либо сам пост выполнять в блоке Try Except с проверкой кода ошибки.
← →
Anatoly Podgoretsky (2003-07-16 12:37) [19]Если уж использовать ГУИДб то зачем псевдо, надо использовать системное
← →
ZrenBy (2003-07-16 12:41) [20]>>MsGuns © (16.07.03 12:31)
>>Anatoly Podgoretsky © (16.07.03 12:37)
Слава богу, эпопея с парадохом давно закончилась
Сейчас MS SQL 2000
>>Жаль, что только 12, а не 120 или 255 ;))
Гы. Не поверите, но я своими глазами видел такие первичные ключи
(255), правда на ракле.
← →
Term (2003-07-16 12:54) [21]
> Anatoly Podgoretsky © (16.07.03 12:37)
> Если уж использовать ГУИДб то зачем псевдо, надо использовать
> системное
можно ссылочку и пояснить както?
← →
Anatoly Podgoretsky (2003-07-16 12:55) [22]MS SDK, на твоем компьютере
← →
Term (2003-07-16 12:59) [23]:) спасибо
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.013 c