Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Вниз

Неожиданный key violation в автоинк поле   Найти похожие ветки 

 
VladP   (2002-01-31 11:20) [0]

Здравствуйте!
Помогите, если кто сталкивался.
Есть таблица Paradox:
Id autoinc
Name Char(35)
...
Все работает замечательно до некоторого времени (1-2 месяца), когда на любое добавление (даже в не в Delphi, a в Database Desktop) выдается Key Violation!
Я вроде бы нашел решение, но оно не есть гуд. Если кому интересно, то помогает изменение типа поля с Autoinc на integer и затем опять на AutoInc.


 
Fay   (2002-01-31 15:57) [1]

Лечится только твоим способом.


 
VladP   (2002-02-01 21:29) [2]

Может кто еще знает?


 
Фэ   (2002-02-01 21:37) [3]

Autoinc вообще плохой тон.
Кроме очень простых случаев.
А если крупную базу пересобрать надо ?


 
Havez   (2002-02-02 18:24) [4]

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


 
VladP   (2002-02-03 10:07) [5]

>Фэ
Почему плохой? По моему очень удобно. Попробуй делать выборку на a=max(id), потом добавлять новую запись с полученным значением+1, потом еще раз делать выборку на чтобы подсчитать кол-во полученных значений (a+1), а вдруг другой пользователь тоже самое сделал в это же время? Это было одним из плюсов из-за чего я перешел на Paradox.


 
VladP   (2002-02-03 10:25) [6]

>Haves
Спасибо за компонент, судя по описанию-именно то.


 
Фэ   (2002-02-03 13:57) [7]

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


 
VladP   (2002-02-03 16:02) [8]

>2Фэ
Извини, но что есть пересборка базы?



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.004 c
4-90700
Снежок
2001-12-29 17:02
2002.02.28
Winlogon notification package на Delphi


3-90473
sal
2002-02-02 01:29
2002.02.28
разделить connect к БД между приложением и dll


1-90561
novomod
2002-02-10 01:06
2002.02.28
Timage. Мерцание. Help.


1-90609
dim2001
2002-02-08 18:51
2002.02.28
Какая исключительная ситуация происходит ?


3-90512
tow
2002-02-04 10:50
2002.02.28
Базы данных





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский