ADOTable1.append;// для начала редактирования
ADOTable1.FieldByName('Здесь название столбца').AsString:=Edit1.Text;
ADOTable1.post;// записываем в конец таблицы
Добавление новой записи в таблицу с формы
Вопрос мой звучит предельно просто.
Есть две формы, как в oracle apex, только реализованный на delphi. На первой таблица dbgrid со списком товаров, на второй - поля dbedit, 2 dbgid-а, и dbcombobox.
На первой форме 2 кнопки - для редактирования записи, выбранной до этого мышой, и для добавления новой записи в конец таблицы.
Проблема в следующем - не представляю, как сделать, чтобы те же компоненты, что используются для редактирования резко перестали ссылаться на то, что было до этого в таблице выбрано, а были девственно чисты и непорочны, причем ссылались на ПУСТУЮ строку (за искл. autoinc поля id) таблицы.
Сам как-то делал год назад, а сейчас хоть молотком пришиби, не помню.:confused:
При редактировании - Edit.Text:=MyQuery.FieldByName('MyField').asString;
Тот способ, что Вы используете, подойдет для лабораторной или для курсовой, но не больше.
Лучше всего о том, почему так лучше, Вы сможете найти на ibase.ru
Теперь по вопросу...
Я сам так не поступаю :) но разве при Table.Insert или Table.Append DBEdit | DBCombobox ссылаются не на новую запись?
Почему делаю все через TDB*** компоненты - для простоты программрования. Особо о памяти не забочусь - пока не главное. Главное - чтобы работало. С добавлением в таком случае немного пришлось похимичить, а именно: добавляем TDBNavigator и на нажатие клавиши TBitBtn назначаем событие нажать клавишу 'insert'. Все... Реально, тупо, просто, в лоб, но работает:cool:
Код:
и всё в таком роде ,если у тебя поля не только строковые, то можно поставить и AsBoolean (условные, т.е да или нет), ну и т.д.