已有56人关注
SQL 查询命令datetime 变量大于某一个时间点(也为datetime变量),请问怎么查
发表在C#图书答疑 2020-08-11 悬赏:30 学分 《C#从入门到精通(第4版)》第13章 数据访问技术
是否精华
版块置顶:

在C#查询命令中,用以下命令可以查出想要的结果。`Start Time` 是Mysql的表的一个字段名。

str_sql="select * from test where  `Start Time` > '2020-08-07 12:00:35'";

现在需要把其中的'2020-08-07 12:00:35'换成一个Datetime的变量,但是程序就会报错。比如:

//先定义limit_time:

DateTime limit_time = DateTime.Parse("2020-08-07 12:00:35");

//查询在limit_time之后的所有信息

str_sql="select * from test where  `Start Time` > '"+limit_time +"'";

程序会在后面的da.Fill(dt);这部分报错,报错信息如下:

MySql.Data.MySqlClient.MySqlException:“Incorrect DATETIME value: '8/7/2020 12:00:35 PM'”

请问老师和各位同学,这个问题怎么解决?


分享到:
精彩评论 1
yangxuehot
学分:36 LV2
2020-08-11
沙发

已经解决了这个问题,和大家汇报一下。


一开始我总想着DateTime变量和一个时间点对比,时间点也得是DateTime类型才行。才会产生有问题的帖子,失败了。

现在改成limit_time的变量为string,就解决了。因为DateTime默认是xxxx/xx/xx xx:xx:xx,经过格式化才能编程xxxx-xx-xx xx:xx:xx。

具体解决方法如下:

DateTime limit_time = DateTime.Parse("2020-08-07 12:00:35").ToString("u");

后面的code不变,就成功了。

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照