Всем привет!
Для соединения с базой данных я использую Zeoslib. Для записи в базу данных использую синтаксис Update, который не функционирует.
синтаксис Update
Модератор: Модераторы
синтаксис Update
Последний раз редактировалось jenny 20.08.2015 22:44:23, всего редактировалось 2 раза.
- *Rik*
- постоялец
- Сообщения: 453
- Зарегистрирован: 19.04.2011 12:18:51
- Откуда: Урал
- Контактная информация:
jenny писал(а):Код: Выделить всё
ZQuery1.SQL.Text := 'select logid from user where username ="'+trim(edit1.Text)+'"';
ZQuery1.OPen;
id := ZQuery1.FieldByName('logid').AsInteger;
ZQuery1.Close;
ZQuery1.SQL.Text := 'UPDATE user Set try_fail = b where logid="' + InttoStr(id)+ '" ';
ZQuery1.ExecSQL;
end;
спасибо большое за ответ.
Последний раз редактировалось jenny 20.08.2015 22:44:48, всего редактировалось 1 раз.
- *Rik*
- постоялец
- Сообщения: 453
- Зарегистрирован: 19.04.2011 12:18:51
- Откуда: Урал
- Контактная информация:
jenny писал(а):спасибо большое за ответ. Только у меня error на синтаксисе ZQuery1.SQL.Text := 'UPDATE user Set try_fail = b where logid="' + InttoStr(id)+ '" '; колонка try_fail не распознает переменную b.
Хотя оба имеют тип Integer...
Добавлено спустя 6 минут 44 секунды:
вместо переменной b я вписываю простое число, все получается. Только мне бы хотелось чтобы число в колонки прибавлялось на 1.
Используйте двоеточие перед переменной, она станет параметром, к которому можно обратиться по имени перед выполнением запроса, для ввода значения.
Свойство ZQuery1.ParamCheck должно быть True.
Код: Выделить всё
ZQuery1.SQL.Text := 'UPDATE user Set try_fail = :b where logid=:id ';
ZQuery1.ParamByName('b').AsString := 'ываыва';
ZQuery1.ParamByName('id').AsInteger := id;
ZQuery1.ExecSQL;
спасибо большое, все отлично функционирует 
