使用ADOQuery插入数据库时接收语法错误

使用ADOQuery插入数据库时接收语法错误,ado,delphi-2010,Ado,Delphi 2010,检查所有名称和数据类型,以确保未使用不正确的信息/字段 带有Datamodule的说明在代码顶部,但其余部分的内容太多,这是唯一不起作用的部分: sEncPass := objAlgorithms.CipherEn(sPass,13); //start insert code qryUserInfo.SQL.Clear; qryUserInfo.SQL.Add('INSERT INTO LoginInfo(ID,Login,Password)'); qryUserInfo.SQL.Add('V

检查所有名称和数据类型,以确保未使用不正确的信息/字段

带有Datamodule的
说明在代码顶部,但其余部分的内容太多,这是唯一不起作用的部分:

sEncPass :=  objAlgorithms.CipherEn(sPass,13);
//start insert code
qryUserInfo.SQL.Clear;
qryUserInfo.SQL.Add('INSERT INTO LoginInfo(ID,Login,Password)');
qryUserInfo.SQL.Add('VALUES(:ID,:Login,:Password)');
with qryUserInfo.Parameters do
begin
  ParamByName('ID').Value := sID;
  ParamByName('Login').Value := sUsername;
  ParamByName('Password').Value := sEncPass;
end;
qryUserInfo.ExecSQL;
qryUserInfo.SQL.Clear;
qryUserInfo.SQL.Add('INSERT INTO CustomerInfo(ID,Name,Surname,TelNo,Email)');
qryUserInfo.SQL.Add('VALUES (:ID,:Name,:Surname,:TelNo,:Email)');
with qryUserInfo.Parameters do
begin
  ParamByName('ID').Value := sID;
  ParamByName('Name').Value:= sName;
  ParamByName('Surname').Value:= sSurname;
  ParamByName('TelNo').Value:= sCell;
  ParamByName('Email').Value:= sRAddres;
end;
qryUserInfo.ExecSQL;
我在数据库中使用的字段(都是字符串):


感谢所有提供帮助的人,他们通过在字段名中添加
`
找到了解决方案:

qryUserInfo.SQL.Add('INSERT INTO CustomerInfo(`ID`,`Name`,`Surname`,`TelNo`,`Email`)');

当您试图回答您的问题时,请考虑发布您所接收到的实际错误消息,以帮助其他人。<代码> QRyuSeriFr.ParamCheck < /C> >设置为真吗?true@BrandonHaugen错误是“Project 1.exe引发了异常类EOleException,消息为‘INSERT INTO语句中的语法错误’。”我确保所有名称都没有空格,并将所有字段名和表名复制粘贴到该语句中,以便字段名不会出错。您有两个单独的INSERT语句(一个进入LoginInfo,一个进入CustomerInfo)。哪一个引发异常?传递给该查询参数的变量的实际值是什么?