数据库的日期类型字段该如何选择

数据库的日期类型字段该如何选择,第1张

Mysql中经常用来存储日期的数据类型有三种:Date、Datetime、Timestamp。

Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。

Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。

Timestamp类型:也是存储既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。

所有不符合上面所述格式的数据都会被转换为相应类型的0值。(0000-00-00或者0000-00-00 00:00:00)

楼主求的是思路吧?

我说说如果我做,我会怎么来实现(java)!

1、先查出表中所有的记录,放入一个table中。重要的是得到id

2、在table的每行中设置一个隐藏表单。(用来存放id和值

如:10001,xxx

的形式)。用到的技术是jquery

3、在点击提交时后台用一个数组接收这些隐藏表单的内容(值),通过迭代或循环数组一个个的休息(记得去除中间的“,”)。

呵呵,可能楼主用到的技术和我的不一样。我就在此献丑了!

望楼主有更好的解决办法!

仅供参考!

说明你的表 cdsgus 中的 birthday 字段的值中有不是正常日期格式的数据,如:1980/01, 198001, 最好是将数据整成日期格式,想偷懒那就写脚本时处理,

1 先看是否为日期格式,如果是,直接用 birthday 比较

2 如果不是日期格式,看看长度

3 根据长度具体处理, 如:长 7 位,后面加个天数

如:

SELECT FROM cdsgus

WHERE CASE ISDATE(birthday) WHEN 1 THEN birthday ELSE CASE LEN(birthday) WHEN 7 THEN replace(birthday, '', '/') + '/01' ELSE '1901/01/01' END END >'1980/01/01'

指定数据库,需要有所有表查询权限和视图创建权限

use [database]

Grant select to [userName]

GRANT CREATE VIEW TO [userName]

以上就是关于数据库的日期类型字段该如何选择全部的内容,包括:数据库的日期类型字段该如何选择、mysql数据库如何按照时间条件来批量筛选数据!、sql数据库筛选出生日期,但是提示从 nvarchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9828670.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存