我有一条语句:
           strSQL = " INSERT INTO CMS_REPAIR_RENT (CaoNO,CustomName,StartDate)";
                strSQL += " values (" + CommonString.ConvForDb(newRepair.CaoNO);
                strSQL += " ," + CommonString.ConvForDb(newRepair.CustomName);
                strSQL += " ," + newRepair.StartDate;
                strSQL += ")";
当我执行时就提示确实逗号的错误,(StartDate为Datatime型,其余两个为字符串型)但是只插入前两个字段是可以的,请各位指点一下,Datatime型的要怎样插入啊?

解决方案 »

  1.   

    似乎要把newRepair.StartDate转化为数据库的默认日期格式。
      

  2.   

    try:
             strSQL = " INSERT INTO CMS_REPAIR_RENT (CaoNO,CustomName,StartDate)";
                    strSQL += " values (" + CommonString.ConvForDb(newRepair.CaoNO);
                    strSQL += " ,'" + CommonString.ConvForDb(newRepair.CustomName)+"'";
                    strSQL += " ,To_Date('" + newRepair.StartDate+"','yyyy-MM-dd');
                    strSQL += ")";
      

  3.   

    再改一下:
             strSQL = " INSERT INTO CMS_REPAIR_RENT (CaoNO,CustomName,StartDate)";
                    strSQL += " values (" + CommonString.ConvForDb(newRepair.CaoNO);
                    strSQL += " ,'" + CommonString.ConvForDb(newRepair.CustomName)+"'";
                    strSQL += " ,To_Date('" + newRepair.StartDate+"','yyyy-MM-dd')";
                    strSQL += ");";你设个断点,看看得到的语句是否是这样的形式,INSERT INTO CMS_REPAIR_RENT (CaoNO,CustomName,StartDate)
    Values(1,'A',To_Date('2006-01-01','yyyy-MM-dd'));