更新日期型字段的SQL语句出错
SQL.Add('Update TableName Set StartDate='''+DateToStr(Date)+'''');

解决方案 »

  1.   

    对了,我的数据库用的是Paradox
    再,如果是sqlserver,又应该怎样写SQL语句?
      

  2.   

    是否你的日期格式不对?可以参考下面的代码。
        //将系统短日期格式改为yyyy/M/d形式
        if SetLocaleInfoa(LOCALE_SYSTEM_DEFAULT,LOCALE_SSHORTDATE,'yyyy/M/d')
        then
            SendMessageA(HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0);
      

  3.   

    你是说你的parardox里的字段是一个日期型吧??那怎么会用datetostr呢??
    应该是strtodatetime()才对。
    如果是sql写法还是一致的.
      

  4.   

    update tablename set startdate=getdate()
      

  5.   

    能不能用combobox来选日期更新数据库?将日期分成y/m/d
      

  6.   

    当然可以,首先把STRING型转换成DATE型就可以。
      

  7.   

    SQL.Add('Update TableName Set StartDate='''+DateToStr(Date)+'''');
    你这样的语句不错才怪了.
    可以采用以下方法:
    SQL.Add('Update TableName Set StartDate='+QuotedStr(DateToStr(Date)));
      

  8.   

    以上各种方法好象都不行,我用的是Paradox表,求救!
      

  9.   

    SQL.Add('Update TableName Set StartDate='''+formatdatetime('yyyy-mm-dd',Date)+'''');
      

  10.   

    好像是SQL.Add('Update TableName Set StartDate='''+formatdatetime('mm/dd/yyyy',Date)+'''');