为什么在我的SQL语句中需要分号才能插入两个表?

时间:2011-10-12 14:09:04

标签: sql delphi

我正在尝试将两组数据插入到我的数据库中,它给出了一个错误,说它在SQL语句的末尾缺少一个分号。

以下是我输入的代码:

procedure TForm9.Button1Click(Sender: TObject);
var
sNewTeam, sNewCountry : string;
begin
      sNewTeam := InputBox('NEW','Insert The Name Of The New Team','',);
      sNewCountry := InputBox ('NEW','Insert The New Country','');

   qryAdmin.Active := false;
   qryAdmin.SQL.Text := 'INSERT INTO Teams(Teams) VALUES("'+sNewTeam+'")' + 'Country(Teams) VALUES("'+sNewCountry+'")';
   qryAdmin.ExecSQL;
end;

1 个答案:

答案 0 :(得分:6)

这是 2 插入到不同的表中,因此需要2 INSERT INTO

假设您的数据库支持使用分隔语句;执行:

'INSERT INTO Teams(Teams) VALUES("'+sNewTeam+'"); INSERT INTO Country(Teams) VALUES("'+sNewCountry+'")';

您还应该使用未命名的数据库客户端支持的任何Paramaterization功能来转义输入文本以防止注入/错误。