I have the following code that runs very fine on MySQL but when I try on Access I get an error saying:
[Microsoft][ODBC Microsoft Access Driver]Invalid precision value
procedure ErrorWriteDB(Const aText : String);
var
Query: TUniQuery;
begin
if aText = '' then
Exit;
Query := TUniQuery.Create(Nil);
Query.Connection := frmDBConn.conDBserver;
try
Query.SQL.Clear;
Query.SQL.Add('INSERT INTO ' + TableLogError);
Query.SQL.Add('(fldError_Time, fldError_Computer, fldError_Software, fldError_Text)');
Query.SQL.Add('values (:fldError_Time, :fldError_Computer, :fldError_Software, :fldError_Text)');
try
begin
Query.ParamByName('fldError_Time').AsDateTime := Now;
Query.ParamByName('fldError_Computer').AsString := Network.ComputerName;
Query.ParamByName('fldError_Software').AsString := conProgram_Name + ' v ' + Exe.Version + ' build ' + Exe.Build;
Query.ParamByName('fldError_Text').AsString := aText;
Query.Execute;
end;
except
on E:Exception do
Logfile.Error('Errorlog: ' + E.Message);
end;
finally
Query.UnPrepare;
Query.Free;
Application.ProcessMessages;
end;
end;
Any input to what is wrong here?