从DataReader访问DateTime字段时,MySqlConversionException [英] MySqlConversionException when accessing DateTime field from DataReader
问题描述
我有一个使用MySql的C#应用程序,使用 MySQL连接器;我试图做一个
的DataReader请求,查询执行正常,但是,当尝试访问DateTime字段时,我得到MySqlConversionException {无法将MySQL日期/时间值转换为System.DateTime}
I have a C# application over MySql, using MySQL Connector; I'm trying to make a DataReader request, the query executes fine, however, when trying to access a DateTime field, i'm getting MySqlConversionException {"Unable to convert MySQL date/time value to System.DateTime"}
这是原型
if (dr != null && !dr.Read()) return;
sesion.Id = Convert.ToInt32(dr["id"]);
sesion.Usuario = Convert.ToInt32(dr["usuario"]);
sesion.Estado = Convert.ToByte(dr["estado"]);
// doesn't work
sesion.FchCreacion = Convert.ToDateTime(dr["fch_creacion"]);
任何建议?
提前感谢
Any suggestions? Thanks in advance
推荐答案
如果您的MySQL数据库中有零个datetime值,则有时会出现此错误(00/00 / 0000 00:00)。尝试将其添加到连接字符串的末尾:
This error sometimes occurs if you have zero datetime values in your MySQL database (00/00/0000 00:00). Try adding this to the end of your connection string:
Allow Zero Datetime=true
这篇关于从DataReader访问DateTime字段时,MySqlConversionException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!