Asp.net 读取MySql数据时 日期问题

zrj525525 2010-02-06 11:12:21
如题:
先贴代码:

public static int getMySqlInsertMsSql()
{
MySQLConnection conn = null;
try
{
string connstr = "Data Source=source;Password=pass;User ID=name;Location=202.181.244.114";
conn = new MySQLConnection(connstr);

conn.Open();
//在mysql数据库测试结果为12条
string query = "select * from orders where date_purchased > '2010-2-4 12:00:00'";

MySQLCommand comm = new MySQLCommand(query, conn);

//MySQLDataReader reader = comm.ExecuteReaderEx();
MySQLDataAdapter adapter = new MySQLDataAdapter(comm);
DataSet ds = new DataSet();
//走到这步抛出异常!!!!!!!!!!!!!!!
adapter.Fill(ds);

DataTable table = ds.Tables[0];
int a = 0;
IList<Orders> list = new List<Orders>();
foreach (DataRow row in table.Rows)
{
Orders orders = new Orders();
orders.Ordernum = row["orders_id"].ToString();
list.Add(orders);
a++;
}
comm.Dispose();
conn.Close();
return a;
}
catch (Exception e)
{
e.Message.ToString();
}
finally
{
conn.Close();
}
return 0;
}


异常信息:
{"日历 System.Globalization.GregorianCalendar 中不支持该字符串所表示的 DateTime。"}

各位大大帮忙看下吧
...全文
276 26 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 lzsh0622 的回复:]
是否支持 '2010-2-4 11:00:00' 这个字符串
[/Quote]

什么意思?
lzsh0622 2010-02-06
  • 打赏
  • 举报
回复
是否支持 '2010-2-4 11:00:00' 这个字符串
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
呃 感谢 lzsh0622


我试了``不行`````
lzsh0622 2010-02-06
  • 打赏
  • 举报
回复
'2010-2-4 12:00:00' 操作系统默认状态 格式应该是正确的.


试试:
控制面板--区域语言选项--自定义-- 日期分隔符  -
时间格式   HH:mm:ss  
zrj525525 2010-02-06
  • 打赏
  • 举报
回复

呃 顶上去
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jenny0810 的回复:]
引用 4 楼 zrj525525 的回复:
这句SQL语句在MYSQL数据库里面执行成功  难道在项目里面写的话就要转?
数据库里好像可以直接转换成datetime
[/Quote]
呃? 那我项目里是要转还是不要转了?
jenny0810 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zrj525525 的回复:]
这句SQL语句在MYSQL数据库里面执行成功  难道在项目里面写的话就要转?
[/Quote]数据库里好像可以直接转换成datetime
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
对``调试到这步的时候 直接CATCH了``
lzsh0622 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用楼主 zrj525525 的回复:]
DataSet ds=new DataSet();//走到这步抛出异常!!!
adapter.Fill(ds);

{"日历 System.Globalization.GregorianCalendar 中不支持该字符串所表示的 DateTime。"}

[/Quote]

adapter.Fill(ds); 抛出这种异常?
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ulihss 的回复:]
你要格式化DataTime字段
比如
to_char(date_purchased ,'yyyy-mm-dd')
[/Quote]
我要在哪转》? 在adapter.Fill(ds); 这步就抛异常了``我真想不到除非在SQL语句里面转还有其它地方能转》?
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
这句SQL语句在MYSQL数据库里面执行成功 难道在项目里面写的话就要转?
Kobayashi 2010-02-06
  • 打赏
  • 举报
回复
你要格式化DataTime字段
比如
to_char(date_purchased ,'yyyy-mm-dd')
nosuchtracter 2010-02-06
  • 打赏
  • 举报
回复
string query = "select * from orders where date_purchased > '2010-2-4 12:00:00'";
这句有错误吧?时间好像要转换的
很长时间没拼sql语句了,有点记不清楚了
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
我很奇怪 为什么执行到这步adapter.Fill(ds);
就抛出异常? 感觉没理由
tan124 2010-02-06
  • 打赏
  • 举报
回复
yyyy-MM-ddTHH:mm:ssZ
chen_ya_ping 2010-02-06
  • 打赏
  • 举报
回复
不知道mySQL中有没有datediff函数进行时间的比较。
zrj525525 2010-02-06
  • 打赏
  • 举报
回复
allow zero datetime=true 在连接字符串加句这个就行了``
lzsh0622 2010-02-06
  • 打赏
  • 举报
回复
你测试一下 你的 MYSQL的这个字段 能否输入日期+时间型的数据,正常显示格式是什么样的。
jyj987817 2010-02-06
  • 打赏
  • 举报
回复

jyj987817 2010-02-06
  • 打赏
  • 举报
回复
up
加载更多回复(6)

62,243

社区成员

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

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

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

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