Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Не могу понять в чем проблема [D2005, XP]


Jacksotnik ©   (2010-09-28 10:02:00) 

Есть вот такой запрос:
myquery1.SQL.Add('INSERT INTO clients(id,fio,tel,adr,birthday,allsum,skidka,tip)');   myquery1.SQL.Add('VALUES('''+card_id+''''+','''+new_kli_fio.Text+''''+','''+new_kli_tel.Text+''''+','''+new_kli_adr.Text+''''+','''+dat+''''+','+new_kli_summ.Text+','+','+inttostr(skidka1)+','+'''fix'')');

непойму почему при выполнении вываливает ошибку:
#42000 you have an error in you SQL syntax. To use near '0,'fix')'
ненравится ему чтото в последних двух передаваемых параметрах.
Тип последних двух параметров int и char соответственно


Jacksotnik   (2010-09-28 10:21:00) [1]

Только у меня немного по другому
myquery1.ParamByName('p1').AsString:=card_id;
myquery1.ParamByName('p2').AsString:=new_kli_fio.Text;
myquery1.ParamByName('p3').AsString:=new_kli_tel.Text;


Jacksotnik   (2010-09-28 10:20:00) [2]

Спс. Помогло)))


12   (2010-09-28 10:13:00) [3]

т.е.

myquery1.parameters.parambyname('id').value := card_id;
или
myquery1.parameters.parambyname('id').asinteger := card_id;

сори, прямо тут пишу


12   (2010-09-28 10:11:00) [4]

да

myquery1.SQL.text := 'INSERT INTO clients(id,fio,tel,adr,birthday,allsum,skidka,tip)' +
                             ' VALUES(:id,:fio,:tel,:adr,:birthday,:allsum,:skidka,:tip)';
myquery1.parameters.parambyname('id') := card_id;
myquery1.parameters.parambyname('fio') := new_kli_fio.Text;
...


Jacksotnik   (2010-09-28 10:09:00) [5]

Имеешь ввиду что лучше передавать через параметры?


12   (2010-09-28 10:07:00) [6]

parameter


Наверх

Титульная страница Поиск, карта сайта Написать письмо