问题描述
日期格式的输入的设计采用文本框好,还是采用<html:select/>?如用户输入【2010-02-22】至【2011-02-23】日期格式在MYSQL最好采用什么数据类型来存储,并便于查询。如select*fromtable1wherefield1=?between输入值1and输入值2;要这样做吗?另外一个就是?假如我要查询像这样的字段?管体规格219*6.35将这样的数据怎样做查询呢?用什么数据类型好呢?字符串?各位大哥些,帮帮小弟啊。。。。
解决方案
解决方案二:
用字符串然后用to-date函数
解决方案三:
最好还是用date,不过条件可以用字符串,传入后转换为date再进行比较查询
解决方案四:
用my97吧,可以先把,也可以根据自己需求去设计,比如你想选【2010-02-22】至【2011-02-23】当你选第一个时间时,再选第二个时间就不能选22日以前的时间了。很方便.试试.
解决方案五:
第一:关于时间格式的内容,在前台输入的时候还是使用时间控件最好,这方面的控件有很多,用户的体验也会好很多。如果使用文本框,格式的校验比较麻烦;使用select框,你的时间间隔为多少好呢?至于在数据库中的格式,如果与时区无关,直接使用字符串会比较方便,因为前台使用的都是字符串格式的。你觉得呢?第二:管体规格219*6.35这种格式在数据库中怎样存储比较方便查询最简单的方式,用两个字段来存在,PIPE_LENGTH、PIPE_DIA这样查询的时候一个and操作就OK了,同时也支持查找某一个数据的所有管体。纯属个人观点,欢迎讨论
解决方案六:
我的开发环境是j2ee,怎样用控件呢?
解决方案七:
引用4楼zhengkaifl的回复:
第一:关于时间格式的内容,在前台输入的时候还是使用时间控件最好,这方面的控件有很多,用户的体验也会好很多。如果使用文本框,格式的校验比较麻烦;使用select框,你的时间间隔为多少好呢?至于在数据库中的格式,如果与时区无关,直接使用字符串会比较方便,因为前台使用的都是字符串格式的。你觉得呢?第二:管体规格219*6.35这种格式在数据库中怎样存储比较方便查询最简单的方式,用两……
恩顶啊不过数据库存时间用字符串有待尚缺当你这个字段不经常用只是显示时可以存字符串(时间格式也完全可以)但是当你需要从库里取出来并有一些操作时你就能明显体会到用时间格式的方便
解决方案八:
怎样实现日期格式的查询?用户输入2010-01-11,用什么数据类型好?还有一种格式2010/02/21又用什么数据类型存储好呢?便于经常查询?假如我现在要查询2010-01-11至2010-09-22之间的管体信息?2010/01/11至2010/09/12但上面的时间值是通过用户输入得到.在MySQL5.1.53版本中应该怎样实现功能呢?
解决方案九:
大哥回答的好,小弟加分!
解决方案十:
我们都是这样做的:SELECTt.*FROMt_tabletWHEREt.create_time>=:输入的日期ANDt.create_time<:输入结束日期的下一天
输入的字符串转为Date时,把时分秒都置为0就可以了。
解决方案十一:
用timestamp存储时间
解决方案十二:
该回复于2010-11-25 13:48:30被版主删除
解决方案十三:
管体规格219*6.35应该用什么数据类型,以便进行查询如用户输入219*6.35最好还是不分开查!
解决方案十四:
varchar
解决方案十五:
个人觉得用Date就是
解决方案:
数据库里面都有固定的日期转换函数,如Oracle里面的to_date(),其他的你找找!
解决方案:
上面说的差不多了,楼主可以看看给点分了
解决方案:
SELECTt.*FROMt_tabletWHEREt.create_time>=输入的日期ANDt.create_time<输入结束日期的下一天还是没有结果?如果我查询制定日期怎么办呢?假如我只查询2010-09-08的记录应该用什么数据类型呢?
解决方案:
用date就行了,完全满足要求
解决方案:
引用2楼culven的回复:
最好还是用date,不过条件可以用字符串,传入后转换为date再进行比较查询
+1
解决方案:
支持用timestamp存储时间;数据库的时间字段好像就是timestamp
解决方案:
SELECTt.*FROMt_tabletWHEREt.create_time>=输入的日期ANDt.create_time<输入结束日期的下一天还是没有结果?如果我查询制定日期怎么办呢?假如我只查询2010-09-08的记录应该用什么数据类型呢?
解决方案:
引用21楼xianaofei的回复:
SELECTt.*FROMt_tabletWHEREt.create_time>=输入的日期ANDt.create_time<输入结束日期的下一天还是没有结果?如果我查询制定日期怎么办呢?假如我只查询2010-09-08的记录应该用什么数据类型呢?
不用什么下一天create_time>to_date(2010-09-0800:00:01,'YYYY-MM-DDHH24:MI:SS')andcreate_time<to_date(2010-09-0823:59:59,'YYYY-MM-DDHH24:MI:SS')
00:00:01和23:59:59是固定的你拼接好字符串就行了
解决方案:
数据库还是用timestamp存储时间查询的时候最好用日期控件用输入框的判断太麻烦接收查询参数用String就行了查询语句如上
解决方案:
引用3楼samuelfisher的回复:
用my97吧,可以先把,也可以根据自己需求去设计,比如你想选【2010-02-22】至【2011-02-23】当你选第一个时间时,再选第二个时间就不能选22日以前的时间了。很方便.试试.
+1,这个用在自己的界面上,样式随意方便输入,多好呀!楼主用个吧
解决方案:
页面上就是字符串的,数据里要存字符串的就不用处理了要存DATE型的就转一下就可以了
解决方案:
还是用字符串吧。。。查询的时候再todate就行了。。。方便