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类型的值,可以不用输入,数据库会自动填充

示例代码:

/*创建表*/
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(),'');
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中的时间类型datetime,date,time,year,timestamp小知识点的更多相关文章

  1. MySql中的时间类型datetime,timestamp,date,year比较

    MySQL日期类型.日期格式.存储空间.日期范围比较.日期类型        存储空间       日期格式                 日期范围------------ ---------   ...

  2. MYSQL中的时间类型

    时间上总共有五中表示方法:它们分别是 time.date.datetime.timestamp和year. time :  “hh:mm:ss”格式表示的时间值,格式显示TIME值,但允许使用字符串或 ...

  3. MySQL时间类型datetime、bigint及timestamp的查询效率

    前期数据准备 通过程序往数据库插入 50w 数据 数据表: CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `time_dat ...

  4. java中存储mysql数据库时间类型【date、time、datetime、timestamp】

    在MySQL中对于时间的存储自己见表的时候都是设置的varchar类型的,感觉挺方便的. 昨天拿别人建好的表写代码,发现这张表中时间类型为datetime的,凭感觉试了一下不行,网上查了刚开始试了好几 ...

  5. MySQL 中常见的时间类型有三种 DATE, DATETIME 和 TIMESTAMP

    MySQL 中常见的时间类型有三种 DATE, DATETIME 和 TIMESTAMP,其中 DATE 类型用于表示日期,但是不会包含时间,格式为 YYYY-MM-DD,而 DATETIME 和 T ...

  6. MVC3学习:Sql Server2005中时间类型DateTime的显示

    在Sql Server2005中,如果将某字段定义成日期时间类型DateTime,那么在视图中会默认显示成年月日时分秒的方式(如 2013/8/6 13:37:33) 如果只想显示成年月日形式,不要时 ...

  7. mysql 时间类型datetime与timestamp区别比较

    mysql 时间类型datetime与timestamp区别比较 相同点: 显示宽度和格式相同,显示宽度固定在19字符,格式为YYYY-MM-DD HH:MM:SS. 不同点: (1)时间范围不同: ...

  8. Mysql中的一些类型

    列类型--整数类型Tinyint:迷你整形 一个字节=8位 最大能表示的数值是0-255 实际区间 -128~127Smallint:小整形 两个字节 能表示0-65535Mediumint:中整型 ...

  9. 解析MySQL中存储时间日期类型的选择问题

    解析MySQL中存储时间日期类型的选择问题_Mysql_脚本之家 https://www.jb51.net/article/125715.htm 一般应用中,我们用timestamp,datetime ...

随机推荐

  1. BZOJ 4884 [Lydsy2017年5月月赛]太空猫(单调DP)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4884 [题目大意] 太空猫(SpaceCat)是一款画面精致.玩法有趣的休闲游戏, 你 ...

  2. bzoj 4430: [Nwerc2015]Guessing Camels赌骆驼

    4430: [Nwerc2015]Guessing Camels赌骆 Description Jaap, Jan, and Thijs are on a trip to the desert afte ...

  3. 用flask开发个人博客(26)—— 利用config.py配置文件动态的创建不同的Flask对象

    原文:https://blog.csdn.net/hyman_c/article/details/52877704 对配置进行封装的目的是根据不同的使用场景,给flask的app赋予不同的config ...

  4. [NOIp2017提高组]逛公园

    题目大意: 给你一个有向图,若用dis(u,v)表示从u到v的最短路长度,求从1到n的长度不超过dis(1,n)+k的路径数. 思路: 首先分别预处理出以1,n为起点的单.源最短路. 对于合法的边重构 ...

  5. JVM入门——JVM内存结构

    一.java代码编译执行过程 1.源码编译:通过Java源码编译器将Java代码编译成JVM字节码(.class文件) 2.类加载:通过ClassLoader及其子类来完成JVM的类加载 3.类执行: ...

  6. python一个简单的爬虫测试

    之前稍微学了一点python,后来一直都没用,今天稍微做一个小爬虫试一试.. 参考了: http://www.cnblogs.com/fnng/p/3576154.html 太久没用了,都忘记pych ...

  7. Mysql五种时间格式

    YEAR [字节数]:1 [取值范围]:1901~2155 [赋值]: 4位数字 2位字符串:'00'~'69'相当于2000~2069:'70'~'99'相当于1970~1999 2位数字:与2位数 ...

  8. 解决eclipse中java代码注释变成乱码的问题

    Eclipse JAVA文件注释乱码将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码 ...

  9. Word中插入英文格式的算法流程

    如图上部分所示,需要序号自动编号,那么插入一个一行一列的的表格,然后点击编号,使得项目自动编号,编号一个就在后面输入一些内容,按enter后第二行开始自动编号,如果要缩进,不能按Tab,Tab自动创建 ...

  10. .net中的泛型

    泛型把类或方法的类型的确定推迟到实例化该类或方法的时候 ,也就是说刚开始声明是不指定类型,等到要使用(实例化)时再指定类型 泛型可以用于  类.方法.委托.事件等 下面先写一个简单的泛型 public ...