...
ADOConnection1:= DBDM.ADOConnection;
ADODataSet1.Connection:= ADOConnection1;
ADODataSet1.CommandType:= cmdTable;
ADODataSet1.CommandText:= 'table1';
АDOConnection1.Connected := true;
ADOConnection1.Open;
ADODataSet1.Open;
...
ADODataSet1.Append;
ADODataSet1.FieldValues['XXX'] := Excel.ActiveSheet.Cells.Item[i, 6].Value;
ADODataSet1.FieldValues['YYY'] := Excel.ActiveSheet.Cells.Item[i, 6].Value;
ADODataSet1.FieldValues['ZZZ'] := g;
ADODataSet1.FieldValues['KKK'] := k;
ADODataSet1.FieldValues['TTT'] := 2;
//ну и так далее ещё с 10 полей
//просто проверка есть ли что писать в базу и можно ли
if (not ADODataSet1.Active) or (ADODataSet1.IsEmpty) Then Exit;
ADODataSet1.Post; //вроде как должно писать в базу
...
Ошибка Data provider or other service returned an E_FAIL status
в нете, то ж не густо советов по этому поводу :(
Есть следующий
Код:
Вообщем-то в своё время, когда - то давно, подобный код у меня работал на ура, теперь же, в тот момент года доходит до строчки с постом ( ADODataSet1.Post; ) имеем ошибку: "Data provider or other service returned an E_FAIL status". Чего с этим делать понятия не имею.
ADOConnection1 и ADODataSet1 компонентки ADO
С базой коннект есть, ибо буквально за 10 строк до этого получаю ИДишник:
Код:
ADQ:=TADOQuery.Create(nil);
ADQ.Connection:=ADOConnection1;
ADQ.SQL.Text:='SELECT Nextval(''TTT') as KK FROM DUAL';
ADQ.Open;
ADQ.Next;
k:=ADQ.Fields.FieldByName('KK').AsInteger;
ADQ.Close;
ADQ.Connection:=ADOConnection1;
ADQ.SQL.Text:='SELECT Nextval(''TTT') as KK FROM DUAL';
ADQ.Open;
ADQ.Next;
k:=ADQ.Fields.FieldByName('KK').AsInteger;
ADQ.Close;
Да... База Cache, хотя особого значения этьо не имеет, всё равно соединение идёт через ODBC.