Convert.ToDateTime转换字符串2011-3-17 9:08:37 得到的结果为什么会是2011/3/17 9:08:37
数据库中使用datetime字段,没有办法插入

解决方案 »

  1.   

    其实你之前的2011-3-17 9:08:37就可以插入到数据库,DateTime类型在拼T-SQL的时候也是转换成String的,
      

  2.   

    直接不能插入,报错:从字符串向 datetime 转换时失败。我记得原来VS2008的时候转换就是2011-3-17 9:08:37 这个格式的,为什么VS2010会变成2011/3/17 9:08:37
    这种了呢
      

  3.   

    2011-3-17 9:08:37 这个可以。 
     SqlParameter spm = new SqlParameter("@datetime", "2011-3-17 9:08:37 "); 
      

  4.   

    得到的结果绝对是DateTime类型的,只是显示的时候格式化了。
      

  5.   


    因为你没用参数化,拼接SQL又把DateTime给转成字符串了。
      

  6.   

    你不需要转换哎,直接DateTime.Now.ToString("yyyy-MM_DD HH:mm:ss");就可以了哎,插入到数据库,然后读取出来!!
      

  7.   

    暂时公司还在使用vs2008 看来要自己主动学习vs2010了
      

  8.   

    这个跟Culture设置有关,看看数据库的语言设置
    直接传这个数据就可以的2011-3-17 9:08:37 
      

  9.   

    http://msdn.microsoft.com/zh-cn/library/9xk1h71t(VS.90).aspx
    看看能不能调整参数,用参数控制转换的格式。
      

  10.   

    直接插入字符串在以后的SQL时间计算会不会有问题啊!比如两个时间对比等?
      

  11.   

    string.format("{0:yyyy-MM-dd HH:mm:ss}",datetime.now)