![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | 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
|
||||
|
||||
|
Цитата:
|