1 (edited by Hram 2014-08-07 01:26:01)

Topic: [Решено] Вставка значения Edit в SQL запрос.

Доброго времени суток.
Возможно ли реализовать следующее.
Имеется Table1 и Table2 (2-я база используется как temp).
Имеется SQL-запрос

INSERT INTO Table2
(Day, Time, id_Specializ, Last_Name, First_Name,
Patronymic, id_Doctors, id_Price, id_Cena, Address,
Phone, id_Referal, id_Reforg, id_RefSpec, Kvit)
SELECT
Day, Time, id_Specializ, Last_Name, First_Name,
Patronymic, id_Doctors, id_Price, id_Cena, Address,
Phone, id_Referal, id_Reforg, id_RefSpec, kvit
FROM Table1 

Значение Kvit в обоих базах null.
Требуется при выполнении запроса добавить в Table2 в ячейку Kvit значение Edit1.
Update.
Я так понял нужно использовать

...
ParamByName('kvit').Value:=Form1.edit1.text
FROM Table1

, но выдается ошибка near ".": syntax error

Re: [Решено] Вставка значения Edit в SQL запрос.

данный SQL запрос будет выполнен через скрипт? или через действие кнопки SQL запрос?

Dmitry.

3 (edited by Hram 2014-08-06 17:48:29)

Re: [Решено] Вставка значения Edit в SQL запрос.

Пытался через кнопку "Sql запрос", но я так понял не получится. Пытаюсь через скрипт, объявить S: String и в Select вставить переменную...Пока гуглю как вставить переменную в sql запрос, но везде только для Where. (

procedure Edit_pacient_Button8_OnClick (Sender: string; var Cancel: boolean);
var
s: String;
begin
S:=Edit_pacient.Edit1.Text;
SQLExecute('INSERT INTO Temp (Day, Time, id_Specializ, Last_Name, First_Name, Patronymic, id_Doctors, id_Price, id_Cena, Address, Phone, id_Referal, id_Reforg, id_RefSpec, Kvit) SELECT Day, Time, id_Specializ, Last_Name, First_Name, Patronymic, id_Doctors, id_Price, id_Cena, Address, Phone, id_Referal, id_Reforg, id_RefSpec,kvit FROM zapicnapriem2 WHERE ZapicNaPriem2.First_Name LIKE '{First_Name}' and ZapicNaPriem2.Last_Name LIKE '{Last_Name}' and ZapicNaPriem2.Patronymic LIKE '{Patronymic}';');
end;

Пока две проблемы:
1. Не знаю как в SELECT прописать вместо kvit переменную S.
2. Не могу найти где ошибся в синтаксисе. Выдает `)` expected.

Re: [Решено] Вставка значения Edit в SQL запрос.

если через кнопку "Sql запрос", то значение с Edit вставляется так

INSERT INTO Table2
(Day, Time, id_Specializ, Last_Name, First_Name,
Patronymic, id_Doctors, id_Price, id_Cena, Address,
Phone, id_Referal, id_Reforg, id_RefSpec, Kvit)
SELECT
Day, Time, id_Specializ, Last_Name, First_Name,
Patronymic, id_Doctors, id_Price, id_Cena, Address,
Phone, id_Referal, id_Reforg, id_RefSpec, {Edit_pacient}
FROM Table1 


а так скриптом

procedure Edit_pacient_Button8_OnClick (Sender: string; var Cancel: boolean);
var
  s: String;
begin
  S:=Edit_pacient.Edit1.Text;
  SQLExecute('INSERT INTO Temp (Day, Time, id_Specializ, Last_Name, First_Name, Patronymic, id_Doctors, id_Price, id_Cena, Address, Phone, id_Referal, id_Reforg, id_RefSpec, Kvit) SELECT Day, Time, id_Specializ, Last_Name, First_Name, Patronymic, id_Doctors, id_Price, id_Cena, Address, Phone, id_Referal, id_Reforg, id_RefSpec,kvit FROM zapicnapriem2 WHERE ZapicNaPriem2.First_Name LIKE ' +S+ ' and ZapicNaPriem2.Last_Name LIKE '+ S +' and ZapicNaPriem2.Patronymic LIKE '+S+';');
end;
Dmitry.