Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Базы";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.039 c
9-1102309010
Colt1978
2004-12-06 07:56
2005.03.06
Масштабирование при смене разрешения (GLScene)


3-1107334983
hgd
2005-02-02 12:03
2005.03.06
Подскажите, с чего начать с базами данных


11-1092320535
Дмитрий Галин
2004-08-12 18:22
2005.03.06
Сообщение WM_LBUTTONDOWN


8-1100429956
TSoftman
2004-11-14 13:59
2005.03.06
TImageEn - форматы tif и gif


1-1108672612
Yegorchic
2005-02-17 23:36
2005.03.06
Что такое с ReadLn?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский