Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > INSERT INTO


Автор: Slyfox 30.11.2007, 09:32
Код

with Form1.ADOQuery1 do begin
  Close;
  SQL.Clear;
  //SQL.Add('INSERT INTO SP (FIO,Number_pas,Name,Rate,Quantity,SP,Date_time) VALUES("'+Edit1.Text+'","'+Edit2.Text+'","'+Name+'",'+Rate+','+Edit3.Text+',"'+SP+'",:Prm)');
  //Parameters.ParamByName('Prm').Value:=Now();

  SQL.Add('INSERT INTO SP (FIO,Number_pas,Name,Rate) VALUES(:FIO,:Number_pas,:Name,:Rate)');
  Parameters.ParamByName('FIO').Value:=Edit1.Text;
  Parameters.ParamByName('Number_pas').Value:=Edit2.Text;
  Parameters.ParamByName('Name').Value:=Edit6.Text;
  Parameters.ParamByName('Rate').Value:=Edit7.Text;
  ExecSQL;
  //Open;
  //DataSource1.DataSet:=ADOQuery1;
 end;

 end;


Использую на подобие 
Parameters.ParamByName('Number_pas').Value:=Edit2.Text;
Там где поле тип текстовый, то все работает, а где необходимо занести в числовой - ошибка.
Rate-столбец является чиловым и поэтому
Parameters.ParamByName('Rate').Value:=Edit7.Text;
не работает.

Помогите кто-чем знает, я пока не знаю в чем дело.
Помогите.

Автор: Rodman 30.11.2007, 10:16
Цитата(Slyfox @  30.11.2007,  09:32 Найти цитируемый пост)
занести в числовой - ошибка.

ошибку в студию

по твоему коду не важу проблем - он нормальный... значит трабла где то в другом месте

Автор: Slyfox 30.11.2007, 10:58
Все уже проблема решена. В чем ошибка была я так и не понял - просто я написал все с самого начала. Возможно в название поставил русскую букву, а у меня все англ.
Спасибо за помощь.

P.S.
Но основная проблема в том, что я мало поспал и выгляжу теперь вот так  smile 

Автор: Vas 30.11.2007, 11:31
А может все таки явно преобразовать текст в число?
Код

Parameters.ParamByName('Rate').Value:=StrToInt(Edit7.Text);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)