Avatar billede kennethv Nybegynder
01. november 2006 - 11:25 Der er 1 løsning

ADOQuery fejl når jeg insætter en record.

Hej eksperter.

Jeg får en fejl som hedder Parameter: 'ParamName' not found.
Jeg gør sikkert noget forkert, men ved ikke lige hvad.
Jeg har denne procedure:

procedure TALBackupCheck.DirWatch1NewFileCreated(Sender: TObject;
  const FileName: string);
var tmp : string;  MemoryStream : TMemoryStream; DataList : TStringList;
begin
  LogMessage('File created: ' + Filename,EVENTLOG_AUDIT_SUCCESS);
  MemoryStream := TMemoryStream.Create;
  if pos('CDATABUP',Filename) <> 0 then
  begin
    if pos('Log',Filename) <> 0 then
    begin
      if pos('DKSOLT',Filename) or pos('DKSODT',Filename) <> 0 then
      begin
        try
          StringList := TStringList.Create;
          repeat
            Sleep(100);
          until not FileInUse(Filename);
          try
            StringList.LoadFromFile(FileName);
          except
            on EFopenError do
            begin
              LogMessage('Cannot open file: ' + filename,EVENTLOG_INFORMATION_TYPE);
            end;
          end;
        finally
          LogMessage(filename + ' open.',EVENTLOG_INFORMATION_TYPE);
          if (POS('ROBOCOPY', StringList.Strings[2]) <> 0) and (POS('Version XP010', StringList.Strings[2]) <> 0) then
          begin
            Navn := StringList.Strings[8];
            Delete(Navn,1,pos('\',Navn));
            Delete(Navn,1,pos('\',Navn));
            Delete(Navn,1,pos('\',Navn));
            Delete(Navn,1,pos('\',Navn));
            Navn := copy(Navn,1,pos('\',Navn)-1);
            Filnavn := ExtractFileName(Filename);
            try
              DataList := TStringList.Create;
              DataList.LoadFromFile(FileName);
            finally
              ADOQuery1.SQL.Text := 'Insert Into TEST (NAME) Values(:ParamNAME)';
              ADOQuery1.Connection.BeginTrans;
              try
                ADOQuery1.Parameters.ParamByName('ParamNAME').Value := Navn;
                ADOQuery1.ExecSQL;
                ADOQuery1.Connection.CommitTrans;
              except
                ADOQuery1.Connection.RollbackTrans;
                Raise;
              end;
            end;
          end;
        end;
      end;
      MemoryStream.Free;
      StringList.Free;
    end;
  end;
end;
Avatar billede kennethv Nybegynder
01. november 2006 - 11:38 #1
Bare glem denne. Jeg havde ikke sat en connection på ADOQuery.

Doh.

Men jeg får nu et andet problem, som jeg opretter i en anden tråd.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester