|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
||||
|
||||
Цитата:
Цитата:
|
#17
|
||||
|
||||
Я вот тут переделал код добавления нового предмета на такой:
Код: Код:
var nov: integer; begin nov:=12; //т.к. последний ID=12 Form3.Table_add_predm.Last; Form3.Table_add_predm.Insert; Form3.Table_add_predm.FieldByName('ID_Predmet').AsInteger:=nov+1; Form3.Table_add_predm.FieldByName('Predmet').AsString:=Form3.Edit1.Text; Form3.Table_add_predm.Post; end; P.S. Маленькая просьба: если действительно можете что-то подсказать по вопросу, то подскажите пожалйуста, без подковырок. |
#18
|
||||
|
||||
У этого метода есть один минус.
Какой индекс вы получите, если у вас сортировка по полю Predmet будет? Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#19
|
||||
|
||||
Страдалецъ, я про сортировку пока не думал. Мне это не понадобится пока. Спасибо за замечание). А как мой код подправить для правильной работы?
|
#20
|
||||
|
||||
Давно это было, когда я с парадоксом возился, но насколько я помню там есть некий таймаут в течении которого буфера обновляются и в вашем случае надо просто перечитать данные перед вставкой. Всего этого можно было-бы сразу избежать, если бы вы запрашивали из таблицы максимальный номер запросом или использовали автоинкриментное поле. В парадоксе это есть.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#21
|
||||
|
||||
Вот мой код получения ID:
Код:
var nomer_predm:integer; begin Query_zapros.Active:=False; Query_zapros.SQL.Clear; Query_zapros.SQL.Add('SELECT ID_Predmet FROM table_predmety2 WHERE Predmet="'+ Form1.ComboBox3.Text+'"'); Query_zapros.Active:=True; nomer_predm:=Query_zapros.FieldByName('ID_Predmet').AsInteger; Form1.Label12.Caption:='Номер предмета = '+IntToStr(nomer_predm); |