Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.30;
Скачать: CL | DM;

Вниз

DBF + AutoIncrement   Найти похожие ветки 

 
ACR ©   (2002-09-06 18:53) [0]

как в DBF зделать поле с AutoIcrement ?


 
Desdechado ©   (2002-09-06 21:13) [1]

автоматически - никак. Только ручками:
1. блокируешь таблицу
2. ищещь максимальное значение ключа
3. добавляешь к нему единицу
4. добавляешь запись с этим ключом
5. разблокируешь таблицу

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


 
elv ©   (2002-09-07 11:51) [2]

Можешь максимальное значение хранить в другой таблице. Меньше шансов вступить в конфликт при попытке блокировать таблицу.


 
Desdechado ©   (2002-09-08 18:53) [3]

2 elv
попытка хранения максимального значения в другой таблице НЕ уменьшает шансов конфликта блокировок, только они переползают на эту отдельную таблицу (ведь при изменении максимума туда тоже его писать надо). Так что совет, имхо, вредный (без обид :)


 
Anatoly Podgoretsky ©   (2002-09-08 19:08) [4]

Или с помощью dBase VII или с помощью функции AddIndex



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

Текущий архив: 2002.09.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
14-98358
Николай Быков
2002-09-05 18:31
2002.09.30
Давайте меняться доками!


1-98173
Cobalt
2002-09-16 09:35
2002.09.30
Проблема со строками 8-(


8-98235
TColor
2002-05-31 16:33
2002.09.30
TColor and HTML


3-97983
Урри
2002-09-02 12:51
2002.09.30
Редактироватние Calcalated поля


4-98404
bob1906
2002-08-13 21:46
2002.09.30
Как присоединить экзешник exe+exe=exe