MySQL数据库(9):数据类型-时间日期类型
时间日期类型
类型 | 名称 | 存储字节数 | 格式 | 表示范围 | 初始值 |
---|---|---|---|---|---|
Date | 日期类型 | 3字节 |
YYYY-mm-dd
|
1000-01-01~9999-12-12
|
0000-00-00
|
Time | 时间类型 | 3字节 |
HH:ii:ss
|
-838:59:59~838:59:59
|
|
Datetime | 日期时间类型 | 8字节 |
YYYY-mm-dd HH:ii:ss
|
1000-01-01 00:00:00 ~ 9999-12-12 23:59:59
|
0000-00-00 00:00:00
|
Timestamp | 时间戳类型 |
YYYY-mm-dd HH:ii:ss
|
表示从格林威治时间开始 | ||
Year | 年类型 | 1字节 |
0~99 / 四位数具体年
|
1900-2155
|
特殊性:
1、year 插入2位数,有如下规则
- 69以下为20+
- 70以上为19+
2、timestamp可以自动更新
timestamp null default current_timestamp on update current_timestamp
3、time可以存放小时超过24的值
4、时间time,可以使用简单的日期 + 空格 + 数字
,会自动转换该数字成天数*24 + 后面的时间
示例
create table my_date(date_field date,time_field time,datetime_field datetime,timestamp_field timestamp,year_field year
);mysql> desc my_date;
+-----------------+-----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+-----------+------+-----+---------+-------+
| date_field | date | YES | | NULL | |
| time_field | time | YES | | NULL | |
| datetime_field | datetime | YES | | NULL | |
| timestamp_field | timestamp | YES | | NULL | |
| year_field | year(4) | YES | | NULL | |
+-----------------+-----------+------+-----+---------+-------+-- 插入正常数据
insert into
my_date(date_field, time_field, datetime_field, timestamp_field, year_field)
values ('1970-01-01', '10:12:12', '1970-01-01 10:12:12', '1970-01-01 10:12:12', 1970);mysql> select * from my_date;
+------------+------------+---------------------+---------------------+------------+
| date_field | time_field | datetime_field | timestamp_field | year_field |
+------------+------------+---------------------+---------------------+------------+
| 1970-01-01 | 10:12:12 | 1970-01-01 10:12:12 | 1970-01-01 10:12:12 | 1970 |
+------------+------------+---------------------+---------------------+------------+-- 插入time小时数超过24
insert into
my_date(date_field, time_field, datetime_field, timestamp_field, year_field)
values ('1970-01-01', '512:12:12', '1970-01-01 10:12:12', '1970-01-01 10:12:12', 50);mysql> select * from my_date;
+------------+------------+---------------------+---------------------+------------+
| date_field | time_field | datetime_field | timestamp_field | year_field |
+------------+------------+---------------------+---------------------+------------+
| 1970-01-01 | 10:12:12 | 1970-01-01 10:12:12 | 1970-01-01 10:12:12 | 1970 |
| 1970-01-01 | 512:12:12 | 1970-01-01 10:12:12 | 1970-01-01 10:12:12 | 2050 |
+------------+------------+---------------------+---------------------+------------+-- time格式转换
insert into
my_date(date_field, time_field, datetime_field, timestamp_field, year_field)
values ('1970-01-01', '5 12:12:12', '1970-01-01 10:12:12', '1970-01-01 10:12:12', 50);mysql> select * from my_date;
+------------+------------+---------------------+---------------------+------------+
| date_field | time_field | datetime_field | timestamp_field | year_field |
+------------+------------+---------------------+---------------------+------------+
| 1970-01-01 | 10:12:12 | 1970-01-01 10:12:12 | 1970-01-01 10:12:12 | 1970 |
| 1970-01-01 | 512:12:12 | 1970-01-01 10:12:12 | 1970-01-01 10:12:12 | 2050 |
| 1970-01-01 | 132:12:12 | 1970-01-01 10:12:12 | 1970-01-01 10:12:12 | 2050 |
+------------+------------+---------------------+---------------------+------------+
PHP中的时间转换函数
- 字符串转时间戳 strtotime
- 时间戳转字符串 date
通常使用int保存时间戳
MySQL数据库(9):数据类型-时间日期类型相关推荐
- java和mysql之间的时间日期类型传递
摘自:http://blog.csdn.net/weinianjie1/article/details/6310770 MySQL(版本:5.1.50)的时间日期类型如下: datetime 8byt ...
- java 和mysql 时间_java和mysql之间的时间日期类型传递
mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59: ...
- 面试官问:mysql中时间日期类型和字符串类型的选择
摘要:MySQL中有多种表示时间日期的数据类型,主要有YEAR.TIME.DATE.DATETIME.TIMESTAMP等 本文分享自华为云社区<一针见血,mysql中时间日期类型和字符串类型的 ...
- mysql数据库BigInt数据类型和实体对象中BigInteger,Long类型的冲突
mysql数据库BigInt数据类型和实体对象中BigInteger,Long类型的冲突 实体Bean public class Broke {/*** brokeid */BigInteger br ...
- mysql数据库中数据类型的长度
mysql数据库中数据类型的长度 在mysql中新建数据表的时候会有长度一说,其实用建表语句建数据表的时候也有涉及 例如: CREATE TABLE user( uid int(4), name va ...
- MySQL数据库的数据类型和索引
数据库的数据库索引对程序员来说是透明的,意味着数据库建立索引之前和之后,你的SQL语句都可以正常运行,索引的运用只是数据库引擎工作时候的优化手段.但是,这不是意味着数据库索引仅仅是数据库设计和运维者的 ...
- 七、Mysql数据库的数据类型和表属性
Mysql数据库的数据类型和表属性 七.Mysql数据库的数据类型和表属性 一.SQL介绍 二.常用SQL分类 三.数据类型.表属性.字符集 1.数据类型 2.种类 数值类型 字符类型 时间类型 二进 ...
- mysql数据库怎么插入时间_给mysql数据库插入当前时间
mysql相关的三个函数有: NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中. CURDATE()以'YYYY-MM-DD'的格式返 ...
- oracle外部表导入,oracle 外部表导入时间日期类型数据
oracle 外部表导入时间日期类型数据以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 建立外部表目录 create d ...
最新文章
- LeetCode 845. 数组中的最长山脉
- boost::mp11::mp_product相关用法的测试程序
- linux 命令 抛后台,Linux 后台执行命令
- [转载] JAVA的throw用法及扩展
- python基于高德地图坐标拾取系统获取地址坐标
- 三款免费好用的代码对比工具,丢弃BeyondCompare
- PDM中BOM管理技术的研究及其应用
- 如何正确利用肢体语言表达自己
- MATLAB实现Enigma 密码机
- Wooboo斥千万巨资 加快手机程序整合步伐
- dell计算机自动开机设置,dell台式电脑定时开机设置教程
- 万国觉醒服务器维护,万国觉醒好像没看到1服怎么回事 官方关闭部分服务器公告[多图]...
- 高斯-赛德尔(Gauss-Seidel)解线性方程组的Matlab实现
- 使用PE工具制作U盘启动盘
- 【C语言算法】归并排序
- 怎么判断数字n是否为2的x次方,即2的幂次呢,比如2,4,8,16,32
- css动画和js动画比较!
- 2、气体灭火系统的设计灭火浓度
- web前端项目实例网站_招聘 | 北京 | tSynsth系联设计 建筑设计师 / 室内设计师 / 项目负责人 / WEB前端开发工程师 / 实习生...
- Armadillo 线性代数库中的聚类算法避坑
热门文章
- jquery 遍历筛选数组有多种方法与函数
- Java中 Long(long) 和Integer(int)之间的强制转换
- oracle无法启动ora03113,Oracle启动失败:ORA-03113
- php使用redis做缓存,php 使用 redis 的缓存实例
- python写安卓游戏_Python 3d最新安卓版下载,Python 3d游戏最新安卓版下载 v1.0 - 游戏盒子下载站...
- 什么是栈?栈的基本应用有哪些?
- Git中的 fetch 和pull 和 fetch用法
- 如何在Linux中创建目录,并且在新建目录文件中用vi编译器输入内容
- Codimd接入单点登录
- 修行漫谈——何为放下