C++ 字符串转换为COleDateTime(CRecordset)

C++ 字符串转换为COleDateTime(CRecordset),c++,database,datetime,string-conversion,C++,Database,Datetime,String Conversion,在CRecordset中,我想将两个日期存储到数据库表中。数据库上的字段来自类型datetime(MS SQL) 有两个变量名为validfrom和validtofrom-type-string。字符串变量中的dateformat为DD.MM.YYYYm_Validfrom和m_Validto来自类型COleDateTime 在CFSC\u FULLTRUCK::Update(),我得到一个转换错误 “转换规范的字符值无效” 我从客户的CSV文件中获取日期。唯一的方法是使用字符串和格式读取CSV

在CRecordset中,我想将两个日期存储到数据库表中。数据库上的字段来自类型
datetime(MS SQL)

有两个变量名为
validfrom
validto
from-type-string。字符串变量中的
dateformat
为DD.MM.YYYY
m_Validfrom
m_Validto
来自类型
COleDateTime

CFSC\u FULLTRUCK::Update()
,我得到一个转换错误

“转换规范的字符值无效”


我从客户的CSV文件中获取日期。唯一的方法是使用字符串和格式读取CSV,或者将其转换为DateTime。ParseDateTime()返回布尔值。不要忽视一个虚假的回报,有些东西会爆炸!当你没有一个有效的日期。
void CFSC_FULLTRUCK::setfulltruck(int nr ,CString ort,CString country ,CString  zone, double cost ,CString  file_index, string validfrom, string validto, double fuelinpercent, CString remark)
    {
        CFSC_FULLTRUCK::Open();
        CFSC_FULLTRUCK::AddNew();
        m_NR = nr;  
        m_ORT =ort;
        m_COUNTRY =country;
        m_ZONENO = zone;    
        m_COST = cost;          
        m_FILE_INDEX = file_index;  

        if(validfrom == ""){validfrom = "01.01.2001";}
        if(validto == ""){validto = "31.12.2020";}

        m_Validfrom.ParseDateTime(validfrom);
        m_Validto.ParseDateTime(validto);
        m_Fuelinpercent = fuelinpercent;
        m_Remark = remark;


        CFSC_FULLTRUCK::Update();
        CFSC_FULLTRUCK::Close();
    }