bcb+sqlserver2005中查询数据库时老是提示“从字符串向datatime转换时失败”解决办法

bcb+sqlserver2005中查询数据库时老是提示“从字符串向datatime转换时失败”
我按单步调试时,每次运行至ADOQuery1->Open();时就弹出如题的提示,我存入数据库的时间用的是时间函数now(),数据用的格式是float,数据库内的时间字段用的格式是datatime格式,数据字段用的格式是float。
------解决方案--------------------
先把格式都设置成date型的
------解决方案--------------------
转换前有没有检查字段内容是否为空值?
------解决方案--------------------
AnsiString str_arr = Year + "-" + Month;
AnsiString str_dep =Year + "-" +IntToStr(StrToInt(Month) + 1) ;   
改成:
AnsiString str_arr = Year + "-" + Month + "-1";
AnsiString str_dep = Year + "-" + IntToStr(StrToInt(Month) + 1) + "-1";   

试试。