Форум: "Базы";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];
Внизтеряется запятая при вставке числа в таблицу ... Найти похожие ветки
← →
Tutov Roman (2002-06-18 13:49) [0]При отработке такого запроса в таблицу вставляется
число 1267 . Почему ?
UPDATE VIDKARD
set PRISE="12,67"
where VIDKARD = "UPS Powercom BNT 600-A"
Поле PRISE типа Float
← →
matvey (2002-06-18 14:00) [1]При обработке такого запроса ничего не должно вставиться, потому как запятая воспринимается как разделитель. Нужно использовать "12.67".
← →
Tutov Roman (2002-06-18 14:14) [2]Для вставки я использую такой код :
IBQuery1.Close;
Form1.IBQuery1.SQL.Add("UPDATE VIDKARD");
Form1.IBQuery1.SQL.Add("set PRISE="+Chr(39)+form1.Table1.FieldByName("TSENA").asString+Chr(39));
Form1.IBQuery1.SQL.Add("where VIDKARD ="+Chr(39)+form1.Table1.FieldByName("NAME").AsString+Chr(39));
Memo1.Text:=form1.Table1.FieldByName("TSENA").asString;
IBQuery1.Open;
IBQuery1.SQL.Clear;
Как тогда нужно обходить эту проблему ?
← →
hooch (2002-06-18 14:22) [3]Form1.IBQuery1.SQL.Add("set PRISE=:PRISE");
Form1.IBQuery1.ParamByName("PRISE").Value = form1.Table1.FieldByName("TSENA").Value
← →
Tutov Roman (2002-06-18 14:46) [4]Спасибо
← →
Skywalker (2002-06-18 14:54) [5]Попробуй так:
DecimalSeparator:=".";
IBQuery1.Close;
Form1.IBQuery1.SQL.Add("UPDATE VIDKARD");
Form1.IBQuery1.SQL.Add("set PRISE="+Chr(39)+FloatToStrF(form1.Table1.FieldByName("TSENA").AsFloat,ffFixed,8,2)+Chr(39));
Form1.IBQuery1.SQL.Add("where VIDKARD ="+Chr(39)+form1.Table1.FieldByName("NAME").AsString+Chr(39));
Memo1.Text:=form1.Table1.FieldByName("TSENA").asString;
IBQuery1.Open;
IBQuery1.SQL.Clear;
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.07.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c