19.06.2007, 12:42
общий
это ответ
Здравствуйте, Michail_bal!
Во первых, конструкция команда «insert into» преднозначена для выполнениея кода SQL и к С++Builder не имеет отношения. Если хотите использовать такую команду, надо тогда сформировать правильно запрос в виде строки. Например:
String s = “Insert Into opl.db (fild1) Values (‘“+Ediit1->Text+”’ )”;
Или, коль уж работаем на С/С++:
Char s[255] = {0};
Sprintf(s,” Insert Into opl.db (fild1) Values (‘%s’)”, Ediit1->Text.c_str());
//для компонентов TQuery
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(s);
ADOQuery1->ExecSQL();
// ИЛИ для выполнения кода на сервере
ADOCommand1->CommandText = s;
ADOCommand1->Execute();
Иначе, просто надо пользоваться свойствами Insert() или InsertRecord().
Tbl->Insert();
// работаем/ добовляем данные в таблицу
Tbl->Post(); // сохраняем записи
Для InsertRecord:
Tbl->InsertRecord(ARRAYOFCONST((Edit1->Text,Edit2->Text, Null, Null, Null, Null, Null, Null,NULL)));
В этом случае, надо вводить все значения, если их нет – пишем NULL но все поля должны быть задействованы.