当前位置: 代码迷 >> C# >> 为什么用DateTime.Now获取当前时间会带有星期几 上下午这种中文啊 入库报错!怎么处理?win8系统
  详细解决方案

为什么用DateTime.Now获取当前时间会带有星期几 上下午这种中文啊 入库报错!怎么处理?win8系统

热度:68   发布时间:2016-05-05 04:37:50.0
为什么用DateTime.Now获取当前时间会带有星期几 上下午这种中文啊 入库报错!怎么办?win8系统
本帖最后由 z2949365 于 2015-02-12 17:51:58 编辑
{MySql.Data.MySqlClient.MySqlException (0x80004005): Incorrect datetime value: '2015/2/12 星期四 下午 5:42:32' for column 'AddTime' at row 1
   在 MySql.Data.MySqlClient.MySqlStream.OpenPacket()
   在 MySql.Data.MySqlClient.NativeDriver.ReadResult(UInt64& affectedRows, Int64& lastInsertId)
   在 MySql.Data.MySqlClient.MySqlDataReader.GetResultSet()
   在 MySql.Data.MySqlClient.MySqlDataReader.NextResult()
   在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior)
   在 MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery()
   在 MySql.Data.MySqlClient.MySqlHelper.ExecuteNonQuery(MySqlConnection connection, String commandText, MySqlParameter[] commandParameters)
   在 MySql.Data.MySqlClient.MySqlHelper.ExecuteNonQuery(String connectionString, String commandText, MySqlParameter[] parms)
   在 SmartFamily.CmsPlus.DataAccess.Mysql.DaArticle.CreateArticle(Article article)
   在 manage_NewsEdit.btnSubmit_Click(Object sender, EventArgs e) 位置 e:\Project\PaintPicture\manage\NewsEdit.aspx.cs:行号 103}

如题 服务器上不会的 我本机获取当前时间 就是这种鸟格式 2015/2/12 星期四 下午 5:42:32 数据库字段是datetime类型 所以就报错了 网上都没看到有解决办法的 系统时间设置我也调整过 右下角是已经只显示日期和时间了 但是程序获取还是带有中文 蛋疼了 有谁遇到过这种问题?
------解决思路----------------------
我怎么就觉得你是sql语句里的时间没有加单引号呢,convert试一下,而且可以把sql语句贴出来给大家看看
String commText = "insert into tables(name,time)values(" + "'" + name + "','" + time + "')";

name和时间在values里面要加单引号把他们括起来,我原来是遇到过这种问题的,我感觉你也是
------解决思路----------------------
到控制面板里修改日期格式的设置,去掉星期几的显示就可以了,这种情况多半是由于你装的是那种一键Ghost的操作系统。
但这只是治标不治本,最好的办法是使用参数化查询,不要把值直接拼接在SQL里。
  相关解决方案