Avatar billede razersedge Nybegynder
14. juni 2003 - 17:53 Der er 1 løsning

Delphi ADO, Syntax Fejl

Hej folkens, jeg er lidt fortvivlet over hvilken kategori dette spørgsmål skulle stilles i, but here goes:

Jeg er for første gang ved at lege med ADO forbindelser til en Access database.

I databasen har jeg følgende tabel (files):

Id - Autonummerering
filename - tekst
filepath - tekst
server - tekst
port - tal
passive - Ja/Nej
user - tekst
pass - tekst
size - tal

I mit delphi projekt sletter jeg nu først hele indholdet af denne tabel, på følgende måde:

  ADOC1.CommandText := 'DELETE FROM files';
  ADOC1.Execute;

ADOC1 - TADOCommand.
Dette tyder jo på forbindelsen er iorden, hvilket min fejl besked også giver udtryk for.

Senere skal jeg nu indsætte data i databasen, dette sker på følgende måde:


    ADOC1.CommandText := 'INSERT INTO files (filename, filepath, server, port, passive, user, pass, size) VALUES '+
                              '(:Filename, :Filepath, :Server, :Port, :Passive, :User, :Pass, :Size)';

    ADOC1.Parameters.ParamByName('Filename').Value := ExtractFileName('C:'+StringReplace(FQItem^.FName,'/','\',[rFReplaceAll]));
    ADOC1.Parameters.ParamByName('Filepath').Value := FQItem^.FName;
    ADOC1.Parameters.ParamByName('Server').Value := FQItem^.Server;
    ADOC1.Parameters.ParamByName('Port').Value := FQItem^.Port;
    ADOC1.Parameters.ParamByName('Passive').Value := FQItem^.Passive;
    ADOC1.Parameters.ParamByName('User').Value := FQItem^.User;
    ADOC1.Parameters.ParamByName('Pass').Value := FQItem^.Pass;
    ADOC1.Parameters.ParamByName('Size').Value := FQItem^.FSize;

    ADOC1.Execute;

FQItem er en pointer som refererer til en record, som ser sådan ud:

  TQItem = record
      Server : String;
      Status : String;
      Port  : Integer;
      Passive : boolean;
      User  : String;
      Pass  : String;
      FName  : String;
      FSize  : Int64;
  end;

Fejlen jeg modtager er en helt regulær syntax error i min INSERT INTO statement. Men jeg kan altså ikke lige spotte den. Grunden til jeg stiller spørgsmålet i denne kategori er, at jeg ikke ved om jeg overfører parametrene rigtigt, etc..


Mvh Simon
Avatar billede razersedge Nybegynder
14. juni 2003 - 18:15 #1
Heh.. fejlen synes at komme af nogle reserverede ord i Access.

Blev nødt til at ændre nogle af tabel feltnavnene.
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