[SqlException (0x80131904): 从字符串转换日期和/或时间时,转换失败。

sqlite_me 2016-04-20 03:11:51
数据库是从SqlServer2008移到SqlServer2014上,直接从VS2010上支行不会有问题,但是发布出去就有错,错误如下:
“/”应用程序中的服务器错误。

从字符串转换日期和/或时间时,转换失败。

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 从字符串转换日期和/或时间时,转换失败。

源错误:

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪:


[SqlException (0x80131904): 从字符串转换日期和/或时间时,转换失败。]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) +388
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) +688
System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) +4403
System.Data.SqlClient.SqlDataReader.TryHasMoreRows(Boolean& moreRows) +356
System.Data.SqlClient.SqlDataReader.TryReadInternal(Boolean setTimeout, Boolean& more) +499
System.Data.SqlClient.SqlDataReader.Read() +34
System.Data.SqlClient.SqlCommand.CompleteExecuteScalar(SqlDataReader ds, Boolean returnSqlValue) +53
System.Data.SqlClient.SqlCommand.ExecuteScalar() +284
haoke365.SqlHelper.ExecuteScalar(String SQL) in F:\好客EAM资产管理系统Source-20160331\web\hkpro\Public\SqlHelper.cs:164
hkpro.asse2.wpff.Ffdlr.GridViewBind() in F:\好客EAM资产管理系统Source-20160331\web\hkpro\asse2\wpff\Ffdlr.aspx.cs:86
hkpro.asse2.wpff.Ffdlr.Page_Load(Object Sender, EventArgs E) in F:\好客EAM资产管理系统Source-20160331\web\hkpro\asse2\wpff\Ffdlr.aspx.cs:35
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178
...全文
962 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
イω 2020-05-08
  • 打赏
  • 举报
回复
datatime格式和string格式不一样,以字符串格式存入时间格式字段当然不行
lovebaby 2020-04-20
  • 打赏
  • 举报
回复
异常详细信息: System.Data.SqlClient.SqlException: 从字符串转换日期和/或时间时,转换失败。 你的异常信息已经很明显了,属于SQL异常。 可以使用SQL Server Profiler调试一下,看具体哪个SQL出错了。
  • 打赏
  • 举报
回复
我的代码片段如下: protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
int userID = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);
string UserName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
string UserGender = ((TextBox)GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text;
string CreatedTime = ((TextBox)GridView1.Rows[e.RowIndex].Cells[3].Controls[0]).Text;
string ispass = ((TextBox)GridView1.Rows[e.RowIndex].Cells[4].Controls[0]).Text;
SqlConnection conn=
new SqlConnection(ConfigurationManager.ConnectionStrings["Constr"].ConnectionString);
string sqlString = "update UserInfo set UserName='" + UserName;
sqlString += "',UserGender='" + UserGender + "',CreatedTime='" + CreatedTime;
sqlString += "',IsPass='" + ispass + "'where UserID=" + userID;
conn.Open();
SqlCommand cmd = new SqlCommand(sqlString, conn);
cmd.ExecuteNonQuery();
GridView1.EditIndex = -1;
ShowAllUser();
conn.Close();
}
这个出错在哪啊
UUID9527 2020-03-10
  • 打赏
  • 举报
回复
是不是在Linux上运行的,Linux上好像有这个问题,所以我尽量用string类型
勾吴江南 2020-03-10
  • 打赏
  • 举报
回复
如果没猜错的话这些问题跟服务器的语言环境有关(不是编程语言)。在英语系统下时间格式大多都为dd/MM/yyyy。在美国MM/dd/yyyy在亚洲yyyy/MM/dd。所以你先要了解你所用的服务器的语言环境。.NET Core在Linux上同样存在语言环境的问题。
george-pang 2019-07-01
  • 打赏
  • 举报
回复
我也遇到了这个问题,项目代码在VS2013调试运行都没问题,Web项目部署到IIS上获取数据库数据就提示: [SqlException (0x80131904): 从字符串转换日期和/或时间时,转换失败。 请问楼主最后解决了嘛?咋解决的?
qq_22266933 2016-07-01
  • 打赏
  • 举报
回复
我也遇到了这个问题,请问你是怎么解决的
sqlite_me 2016-04-20
  • 打赏
  • 举报
回复
时间格式是“yyyy-MM-dd”,发布到服务器上去没问题,服务器上数据是SqlServer2008,我本机是Sqlserver2014,发布到本机有这样的问题,直接从VS中调试支行就没有
hxm_admin 2016-04-20
  • 打赏
  • 举报
回复
数据库默认的时间格式是“2016-04-20” ,检查数据里面是不是有其他格式的
  • 打赏
  • 举报
回复
估计是你的C#的DateTime直接用了ToString(),服务器上默认转成了 2016/04/20这种,而数据库默认只认2016-04-20这种

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧