mysql中的时间类型datetime,date,time,year,timestamp小知识点
2016-06-22 14:31
1061 查看
1、datetime,date,time,year四个类型的值,可以手动输入,也可以调用函数获得值
① 手动输入,格式如下:
datetime "2016-6-22 14:09:30"
date "2016-6-22"
time "14:09:30"
year "2016"
如上所述,手动输入的时候,直接可以输入如上格式的字符串,注意需要加引号。其中日期和时间中的分隔符(日期的短横线"-",时间的冒号":"),都可以用别的符号来代替,如“2016/6/22 14/9/30”
② 用函数获取值,可以直接使用now()函数来获取当前的时间
2、timestamp类型的值,可以不用输入,数据库会自动填充
示例代码:
① 手动输入,格式如下:
datetime "2016-6-22 14:09:30"
date "2016-6-22"
time "14:09:30"
year "2016"
如上所述,手动输入的时候,直接可以输入如上格式的字符串,注意需要加引号。其中日期和时间中的分隔符(日期的短横线"-",时间的冒号":"),都可以用别的符号来代替,如“2016/6/22 14/9/30”
② 用函数获取值,可以直接使用now()函数来获取当前的时间
2、timestamp类型的值,可以不用输入,数据库会自动填充
示例代码:
/*创建表*/ mysql> create table time_table( -> dt datetime, -> d date, -> t time, -> y year, -> ts timestamp -> ); Query OK, 0 rows affected (0.05 sec) /*查看表结构*/ mysql> desc time_table; +-------+-----------+------+-----+-------------------+-----------------------------+ | Field | Type | Null | Key | Default | Extra | +-------+-----------+------+-----+-------------------+-----------------------------+ | dt | datetime | YES | | NULL | | | d | date | YES | | NULL | | | t | time | YES | | NULL | | | y | year(4) | YES | | NULL | | | ts | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | +-------+-----------+------+-----+-------------------+-----------------------------+ 5 rows in set (0.01 sec) /*手动插入数据,ts数据为null*/ mysql> insert into time_table(dt,d,t,y,ts) values("2016-6-22 11:57:30","2016/6/22","11:57:30","2016",null); Query OK, 1 row affected (0.01 sec) /*手动插入数据,没有为ts提供数据*/ mysql> insert into time_table(dt,d,t,y) values("2016-6-22 11:57:30","2016/6/22","11:57:30","2016"); Query OK, 1 row affected (0.00 sec) /*利用now()函数提供数据,为y字段手动输入数据,没有为ts提供数据*/ mysql> insert into time_table(dt,d,t,y) values(now(),now(),now(),'2016'); Query OK, 1 row affected, 1 warning (0.00 sec) /*手动插入数据,日期时间分隔符更换为“/”,依然没有为ts提供数据*/ mysql> insert into time_table(dt,d,t,y) values ("2016/6/22 14/10/30","2016/6/22","14:10:30","2016"); Query OK, 1 row affected (0.00 sec) /*查看数据*/ mysql> select * from time_table; +---------------------+------------+----------+------+---------------------+ | dt | d | t | y | ts | +---------------------+------------+----------+------+---------------------+ | 2016-06-22 11:57:30 | 2016-06-22 | 11:57:30 | 2016 | 2016-06-22 11:58:00 | | 2016-06-22 11:57:30 | 2016-06-22 | 11:57:30 | 2016 | 2016-06-22 11:59:05 | | 2016-06-22 13:58:54 | 2016-06-22 | 13:58:54 | 2016 | 2016-06-22 13:58:54 | | 2016-06-22 14:10:30 | 2016-06-22 | 14:10:30 | 2016 | 2016-06-22 14:11:58 | +---------------------+------------+----------+------+---------------------+ 4 rows in set (0.00 sec)
相关文章推荐
- MySql中时间比较的实现
- mysql-5.7.12-winx64.zip Windows (x86, 64-bit), ZIP Archive版免安装配置,无法启动服务解决办法
- 备份恢复以及replication复制问题
- Mysql导出导入
- MySQL 索引类型
- mysqldump & binlog做完全备份
- MySQL之——查询重复记录、删除重复记录方法大全
- mysql-5.7.12-winx64.zip Windows (x86, 64-bit), ZIP Archive版免安装配置
- MYSQL做主从复制的时候,出现ERROR 1201 (HY000):Could not initialize master info structure的问题
- MySQL修改root密码的多种方法
- MySQL安全加固实战
- mysql默认允许被连接的只有从本机,从其他主机连接会被拒绝,如何让mysql数据库允许被远程连接访问?
- 用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
- MySQL死锁解决原则
- mysql之导入与导出
- 通过Mysql命令行语句来导入、导出数据库文件
- MySQL索引和查询优化
- MySQL查询的过程中的几个阶段
- mysql lock in share mode 容易死锁
- mysql中binlog_format模式与配置详解