我从4.0升级到5.1,发现以前写的语句:
select * from user where create_time>='20100101 18:37:17' 返回结果不对了,这种时间格式5.0不认,
可这么写的页面非常多,改不过来,能修改mysql5.0的配置识别这种语句吗?

解决方案 »

  1.   

    create_time:日期型?
    date_format(create_time,'%Y-%m-%d hh:mm:ss')
      

  2.   

    感谢yueliangdao0608,虽然你的签名很不雅
    数据库已经升级到5.1,日期也都是按照标准格式2010-01-01 18:37:17存储的。
    现在的问题是4.0可以做select * from user where create_time>='20100101 18:37:17'这样的查询,
    但是5.1不可以了!怎么样可以让5.1也接受这样的查询呢?
      

  3.   

    表里数据存储的没问题,都是标准格式:2010-01-01 18:37:17
    问题是我页面查询语句是: create_time>='20100101 18:37:17'
    现在我不改页面,数据库可不可以识别这种输入格式?
      

  4.   

    修改 datetime_format 系统变化试一下。不过这种会影响所有的日期格式。不建议这样。
      

  5.   

    1.如果不想改SQL语句的话,貌似只能修改服务器的datetime_format这个系统参数了,5.X缺省值是"%Y-%m-%d %H:%i:%s",你改为"%Y%m%d %H:%i:%s"就可以了
    2.可以改SQL语句的话,试试“select * from ocgrp where date_format(upldatetime,'%Y%m%d hh:mm:ss')>='20090101 18:37:17' ”
      

  6.   

    他应该是页面很多都是使用了'20100101 18:37:17' 这个格式进行查询。主要是看你这个时间之前是怎么实现的。如果是SQL 编写了具体格式,那么,没有办法;你只能修改;这里为你感到“杯具”