Вниз
Скачать: CL | DM;

Ошибка при конвертации строки в дату.   Найти похожие ветки 

← →
Alexander Panov ©   (2005-02-07 19:19) [0]

Используется FireBird Embeded 1.5, IBDatabase, IBQuery.

Выполняется для нескольких таблиц подряд следующий код:


  Q.SQL.Text := "ALTER TABLE ""+Src+"" ADD CHDATE DATE DEFAULT ""NOW""";
  Q.ExecSql;
   Q.SQL.Text := "UPDATE ""+Src+"" SET CHDATE=""01.01.2004""";
  Q.ExecSql;


Для нескольких таблиц код отрабатывает без ошибок, а для некоторых возникает исключение -
conversion error from string

Как с этим бороться? Сталкивался кто-нибудь?


← →
Vlad ©   (2005-02-07 19:35) [1]


> Alexander Panov ©   (07.02.05 19:19)  

Обычно рекомендуют использовать параметры. Особенно если дело касается дат или дробных чисел.

UPDATE MyTable SET CHDATE = :Param


← →
Alexander Panov ©   (2005-02-07 19:40) [2]

Vlad ©   (07.02.05 19:35) [1]
UPDATE MyTable SET CHDATE = :Param


Так тоже делал. Ошибка та же самая.
Вот код:

   
   Q.SQL.Text := "UPDATE ""+Src+"" SET CHDATE=:pDate";
   Q.Params[0].DataType := ftDate;
   Q.ParamByName("pDate").AsDate := now-300;
   Q.ExecSQL;



← →
Alexander Panov ©   (2005-02-07 19:57) [3]

Очень странно, но если выполнять запрос на добавление поля и его обновление в одной транзакции, то в этом случае происходит такая ошибка(причем не на всех таблицах).
Если же после каждого запроса выполнять завершение транзакции, то всё отрабатывает без ошибок...


← →
Desdechado ©   (2005-02-07 20:14) [4]

В IB строго разделяется изменение метаданных и изменение данных.
В одной транзакции смешивать недопустимо.


← →
Alexander Panov ©   (2005-02-07 20:45) [5]

Desdechado ©   (07.02.05 20:14) [4]
Спасибо, теперь знать буду.


← →
Fay ©   (2005-02-07 20:46) [6]

2 Vlad ©   (07.02.05 19:35) [1]
В IB дата в виде "XX.XX.XXXX" - это всегда DD.MM.YYYY.


← →
Deniz   (2005-02-08 06:34) [7]

И еще не плохо бы на 3 диалект перейти, и вместо DEFAULT NOW использовать DEFAULT current_timestamp или чего там надо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.03 c
1-1108812295
Михаил_
2005-02-19 14:24
2005.03.06
Подскажите, где можно найти описание реальных имен функций Win AP


4-1106059654
Mr_Jack
2005-01-18 17:47
2005.03.06
вытаскивание инфы из StatusBar


3-1107865579
YurikGL
2005-02-08 15:26
2005.03.06
Запрос на последние данные


1-1108977468
REA
2005-02-21 12:17
2005.03.06
ResourceString


1-1108641174
DimonNew
2005-02-17 14:52
2005.03.06
DBGrid + OnCellClick + Application.MessageBox




   Наверх