|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Запись значений в таблицу
Создаю таблицу программно. таблица сама создается, все ОК. а вот значения в поля не записываются. помогите, вот код.
Код:
begin with datamodule2.ADOQuery1 do begin SQL.Text:='CREATE TABLE '+edit1.text+' (ID INTEGER, Numb String, Obj VARCHAR(255), Data Date, Vremya Date, Id_Tovara INTEGER, PRIMARY KEY(ID))'; if ExecSQL<>0 then begin with datamodule2.ADOTable1.Create (nil) do begin TableName:=edit1.text; datamodule2.ADOTable1.Insert; datamodule2.ADOTable1.FieldByName('Numb').AsString :=NewDoc.Edit1.Text; post; |
#2
|
||||
|
||||
Цитата:
Во-вторых строка которую я пометил стрелкой неправильная - создавать новый объект нужно не от уже существующего объекта, а от класса: Код:
var table1: TADOTable; ..... begin ..... table1:=TADOTable.Create(nil); try table1.Connection:=datamodule2.ADOConnection1; table1.TableName:=edit1.text; table1.Open; table1.Append; table1.FieldByName('Numb').AsString :=NewDoc.Edit1.Text; table1.Post; finally table1.Free; end; ..... end; |
#3
|
|||
|
|||
вот такую ошибку выдает
|
#4
|
||||
|
||||
Цитата:
|
#5
|
|||
|
|||
она создается, после нажатия кнопки.
|
#6
|
||||
|
||||
Цитата:
|
#7
|
|||
|
|||
у меня имя таблицы берется из едита. как вы предлагаете имя включать в скобки?
|
#8
|
||||
|
||||
Цитата:
Код:
table1.TableName:='['+edit1.text+']'; |
#9
|
|||
|
|||
таже самая ошибка.
|
#10
|
||||
|
||||
Цитата:
|