Получение синтаксической ошибки при использовании ADOQuery для вставки в базу данных - PullRequest
0 голосов
/ 26 июня 2018

Все имена и типы данных были проверены, чтобы убедиться, что не использовались неправильные данные / поля.

A with 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;

Поля, которые я использую в БД (все строки):

image

1 Ответ

0 голосов
/ 26 июня 2018

Спасибо всем, кто помог, нашел исправление, добавив ` к именам полей:

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