小智 81
MySqlConnection connect = new MySqlConnection("server=localhost; database=luttop; user=root; password=1234; pooling = false; convert zero datetime=True");
Run Code Online (Sandbox Code Playgroud)
添加convert zero datetime=True
到连接字符串将自动将0000-00-00
Date值转换为DateTime.MinValue()
.
这已经解决了
将"convert zero datetime = True"添加到连接字符串解决了我的问题.
<connectionStrings> <add name="MyContext" connectionString="Datasource=localhost;Database=MyAppDb;Uid=root;Pwd=root;CHARSET=utf8;convert zero datetime=True" providerName="MySql.Data.MySqlClient" /> </connectionStrings>
Run Code Online (Sandbox Code Playgroud)
问候PS
格式中的问题,实际上mysql对于日期/时间数据类型有不同的格式(yyyy-mm-dd)并且为了解决这个问题,请从这里使用.net的mysql连接器库 http://dev.mysql.com/downloads/connector/net / 它将为日期/时间提供名为MysqlDateTime的其他数据类型
或者您可以使用DATE_FORMAT(日期,格式)格式化sql语句中的日期/时间数据,您可以从此处获取更多详细信息 http://dev.mysql.com/doc/refman/5.1/en/date-and-time -functions.html#function_date格式
但我不推荐这个,因为你会失去日期/时间数据类型的力量(例如你无法比较),因为现在你将它转换为字符串,但我认为它将在报告中有用
小智 6
我通过将列的默认值设置为null
数据而不是使用0000-00-00 00:00:00
以下内容来解决我的问题:
update table set date = null
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
64013 次 |
最近记录: |