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)
(1)如果字段是日期类型
那么插入的时候就算没把时间写上最终数据库中的值还是默认加上时间的。其实可以在取出来的时候对日期进行格式化,只取日期:
Select CONVERT(varchar(100), 字段名, 112
(2)如果字段用字符型则则插入的时候只插入日期部门就可以
datetime类型:可用于需要同时包含日期和时间信息的值。
datetime:MySQL 以 'YYYY-MM-DD HH:mm:ss'格式检索与显示 DATETIME 类型。
DateTime 日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00000 到9999年12月31日23:59:59997 ,精确到333毫秒,它需要8个字节的存储空间,其中前4个字节用于存储1900年1月1日以前或以后的天数,数值分正负,正数表示在此日期之后的日期,负数表示在此日期之前的日期;后4个字节用于存储从此日零时起所指定的时间经过的毫秒数。
扩展资料
在MySQL中创建表时,很容易通过类型介绍就能选择到合适自己的数据类型。不过到底是选择 datetime 还是 timestamp,可能会有点犯难。这两个日期时间类型各有优点:datetime 的日期范围比较大;timestamp 所占存储空间比较小,只是 datetime 的一半。
另外,timestamp 类型的列还有个特性:默认情况下,在 insert, update 数据时,timestamp 列会自动以当前时间(CURRENT_TIMESTAMP)填充/更新。“自动”的意思就是,你不去管它,MySQL 会替你去处理。
参考资料来源:百度百科-SQL数据类型
11 获得当前日期+时间(date + time)函数:now()
除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:
current_timestamp() current_timestamp
localtime() localtime
localtimestamp() localtimestamp
这些日期时间函数,都等同于 now()。鉴于 now() 函数简短易记,建议总是使用 now() 来替代上面列出的函数。
12 获得当前日期+时间(date + time)函数:sysdate()
sysdate() 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了, sysdate() 在函数执行时动态得到值。
2 获得当前日期(date)函数:curdate()
其中,下面的两个日期函数等同于 curdate(): current_date(),current_date
3 获得当前时间(time)函数:curtime()
其中,下面的两个时间函数等同于 curtime():current_time(),current_time
4 获得当前 UTC 日期时间函数:utc_date(), utc_time(), utc_timestamp()
1、如果数据库中存储时间的数据类型为datetime,那就避免在后台代码(aspxcs)中转化时间格式,将格式转化的任务放到界面代码(aspx)上。
无论获取的时间是什么格式的,在后台不要对这个时间的值进行任何 *** 作(比如赋值等,否则系统会将时间隐式转换),而是直接在界面代码(aspx)用DataBinder、Eval等方法来直接进行格式化:
后台关键代码:
<span style="white-space:pre"> </span>DataTable dt = new NewsManager()SelectById(newsid); //这里得到的dt为从直接数据库中查询到的数据
<span style="white-space:pre"> </span> repNewsDataSource =dt;
repNewsDataBind();
前台关键代码:
<span style="white-space:pre"> </span><asp:Repeater ID="repNews" runat="server">
<ItemTemplate>
<p class="con_time">
发布时间:
<%# DataBinderEval(ContainerDataItem,"createTime","{0:yyyy-MM-dd HH:mm:ss}") %> <%--此处createTime为上面dt中的字段名--%>
</p>
</ItemTemplate>
</asp:Repeater>
储存时间,常用的有三个选择datetime、timestamp、int。昨夜同事问到了,于是今天就总结一下自己的理解。插入效率:datetime > timestamp > int读取效率:int > timestamp > datetime储存空间:datetime > timestamp = int具体上面的实验数据可以看这篇文章。
以上就是关于数据库datetime是什么类型全部的内容,包括:数据库datetime是什么类型、SQL 2005数据库怎么可以只存日期,不把日期和时间一起存、数据库中datetime是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)