![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
автоинкрементное поле в dbf [D6, dBase, FoxPro]
Dub © (2004-08-13 07:43:00)Подскажите, как можно сделать автоинкрементное поле в dbf. Конечно, можно брать значение поля из последней записи (оно должно быть числовым) и прибавить к нему 1, но если посдеднюю запись удалили?
Desdechado (2004-08-13 10:49:00) [1]И не забывать блокировать файл на время определения максимального значения - тогда никто не сможет параллельно его же вычислить.
Есть, правда, загвоздка - интервал времени между разблокированием и подтверждением записи нового максимального значения. В это время может сосед получить такой же номер, как у тебя.
Ditrix (2004-08-13 10:05:00) [2]select max(id) + 1 as new_id
from dbf_file
Dub (2004-08-13 08:28:00) [3]Да, получается, что- только через зад....(нюю дверь) - лишь бы работало. Thank you!!!
Lvitaliy (2004-08-13 08:20:00) [4]по не правильному можно завести таблицу с одним полем для хранения значения, если это не подходит то только перебором