Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как имитировать автоинкрементное поле в дбф? [D6, dBase, FoxPro]


Пубертанец ©   (2003-10-27 10:03:00) 

Как имитировать автоинкрементное поле в дбф?

Пишу:
insert into some_table (id, xxx, yyy) values
((select max(id)+1 from some_table), 5, 6)

а он не ругается но вставляет только правильное значение id, а поля ххх и ууу остаются пустыми.


Term   (2003-10-27 10:26:00) [1]

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1066293532&n=1


paul_k   (2003-10-27 10:10:00) [2]

естественно ругается
в "values" нельзя использовать подзапросы
query.sql.text = "select max(id) from table"
query.open
if query.fielfs[0].isnull
then newid:=1
else newid:=query.fielfs[0].aSInteger+1
query.close
query.text:="insert into some_table (id, xxx, yyy) values
("+inttostr(newId)+", 5, 6)


Наверх

Титульная страница Поиск, карта сайта Написать письмо