2016-09-22 4 views
-1

Ich arbeite an einem PAT für die Schule können Sie mir bitte mit meinem Code helfen, immer den gleichen Fehler zu bekommen.Syntax Fehler in "in Anweisung einfügen"

Dies ist meine erste

DMrecord.qryMembers.Paramcheck := true; 
DMrecord.qryMembers.SQL.Text := 'INSERT INTO Members ' 
      +'([MemberName],[MemberSurname],[Age],[CellNumber],[EmailAddress])' 
      +' VALUES ' 
      +'(:MemberName, :MemberSurname, :Age, :CellNumber,:EmailAddress)'; 
      DMrecord.qryMembers.Parameters.ParamByName('MemberName').Value := sname; 
      DMrecord.qryMembers.Parameters.ParamByName('MemberSurname').Value := ssurname; 
      DMrecord.qryMembers.Parameters.ParamByName('Age').Value := iage; 
      DMrecord.qryMembers.Parameters.ParamByName('CellNumber').Value := icellphone; 
      DMrecord.qryMembers.Parameters.ParamByName('EmailAddress').Value := semail; 
      DMrecord.qryMembers.ExecSQL; 

Dies ist meine zweite

DMrecord.qryResults.Paramcheck := true; 
DMrecord.qryResults.SQL.Text := 'INSERT INTO Member Result ' 
      +'([ClubNumber],[Event],[AverageTime/Distance],[Numberofcompetition],[Agegroup])' 
      +' VALUES ' 
      +'(:ClubNumber, :Event, :AverageTimeDistance, :Numberofcompetition, :Agegroup)'; 
      DMrecord.qryResults.Parameters.ParamByName('ClubNumber').Value := iclubnumber; 
      DMrecord.qryResults.Parameters.ParamByName('Event').Value := sevent; 
      DMrecord.qryResults.Parameters.ParamByName('AverageTimeDistance').Value := ravg; 
      DMrecord.qryResults.Parameters.ParamByName('Numberofcompetition').Value := inumcomps; 
      DMrecord.qryResults.Parameters.ParamByName('Agegroup').Value := sagegroup; 
      DMrecord.qryResults.ExecSQL; 

Ich hoffe, das es einfacher und Dank für die Hilfe

+0

Raum geben nach und vor 'values' – Sankar

+1

Ihre Bearbeitung wurde zurückgerollt (@kobik mich um etwa eine Sekunde zu schlagen). Wenn Sie ein neues Problem haben, erstellen Sie eine ** neue Frage ** und fragen Sie danach. Sie können ** die Frage nicht in eine neue bearbeiten, nachdem Sie die Antworten erhalten haben. Es entkräftet diese Antworten und lässt die Poster töricht erscheinen und sie dazu bringen, Downvotes zu bekommen. ** Wenn Sie diese Frage erneut ändern, werde ich sie für die Aufmerksamkeit eines Moderators kennzeichnen, da Sie gegen die Regeln dieser Site verstoßen. ** –

Antwort

4

In Ihrer zweiten Abfrage, Sie macht Verwenden Sie

'INSERT INTO Member Result ' 

Dies führt zu einem Fehler, da der Tabellenname ein Leerzeichen enthält und nicht maskiert wird. Sie müssen sie in Klammern wickeln:

'INSERT INTO [Member Result] ' 
+2

Ich glaube nicht, dass die Leerzeichen obligatorisch sind. aber das [Mitgliederergebnis] ist korrekt. +1 – kobik

+0

@ kobik Sie haben Recht - nur getestet, und es hat keinen Fehler geworfen. Ich habe immer angenommen, dass es so war. Danke, ich werde die Antwort aktualisieren. – Siyual

+0

Wäre es ein Grund, warum mein Code die Änderungen in der Datenbank selbst nicht durchführt? – Heinie

Verwandte Themen