异常信息:updata语句语法错误。
问题:难道是把“字符串”类型的数据更新到数据库中的“日期/时间”类型的字段中所造成的?
      那么要把数据存入Access中的“日期/时间”型字段中,不能用字符串,如果是字符串应该怎样转化。            
           //读取数据
            string xm = XM_CG.Text;
            string xb = XB_CG.Text;
            string cstz = CSTZ_CG.Text;
            string cssg = CSSG_CG.Text;
            string hykh = HYKH_CG.Text;
            string csrq = CSRQ.Text;   加入到“日期/时间”型字段中。           
            string jdrq = JDRQ_CG.Text; 加入到“日期/时间”型字段中。             
            string jtzz = JTZZ_CG.Text;
            string bz = BZ_CG.Text;
            string fmxm=FMXM_CG.Text;
            string gzdw=GZDW_CG.Text;
            string lxfs=LXFS_CG.Text;
            
                       //更新文本信息
            string sql = "update  yexxb set [xm]='"+xm+"',[xb]='"+xb+"',[cstz]='"+cstz+"',[cssg]='"+cssg+"',[hykh]='"+hykh+"',[csrq]=#"+csrq+"#,[fmxm]='"+fmxm+"','[gzdw]="+gzdw+"',[lxfs]='"+lxfs+"',[jtzz]='"+jtzz+"',[bz]='"+bz+"',[jdrq]=#"+jdrq+"#)";
            AccessDB access = new AccessDB();
            int R = access.Execute(sql);

解决方案 »

  1.   

    string sql = "update yexxb set [xm]='"+xm+"',[xb]='"+xb+"',[cstz]='"+cstz+"',[cssg]='"+cssg+"',[hykh]='"+hykh+"',[csrq]=#"+csrq+"#,[fmxm]='"+fmxm+"','[gzdw]="+gzdw+"',[lxfs]='"+lxfs+"',[jtzz]='"+jtzz+"',[bz]='"+bz+"',[jdrq]=#"+jdrq+"#";
    使用oledbparameter
      

  2.   


    那么多的参数啊,哥哥用“oledbparameter”和这种方法有什么差别吗?防SQL注入除外,因为在下是WinForm吗?对了“oledbparameter”为什么可以防SQL注入啊?