在mysql数据库中,timestamp数据类型是一个比较特殊的数据类型,可以自动在不使用程序更新情况下只要更新了记录timestamp会自动更新时间。

通常表中会有一个Create date 创建日期的字段,其它数据库均有默认值的选项。MySQL也有默认值timestamp,但在MySQL中,不仅是插入就算是修改也会更新timestamp的值!
这样一来,就不是创建日期了,当作更新日期来使用比较好!
因此在MySQL中要记录创建日期还得使用datetime 然后使用NOW() 函数完成!
1: 如果定义时DEFAULT CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP子句都有,列值为默认使用当前的时间戳,并且自动更新。
2: 如果不使用DEFAULT或ON UPDATE子句,那么它等同于DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP。
3: 如果只有DEFAULT CURRENT_TIMESTAMP子句,而没有ON UPDATE子句,列值默认为当前时间戳但不自动更新。
4: 如果没用DEFAULT子句,但有ON UPDATE CURRENT_TIMESTAMP子句,列默认为0并自动更新。(www.jbxue.com)
5: 如果有一个常量值DEFAULT,该列会有一个默认值,而且不会自动初始化为当前时间戳。如果该列还有一个ON UPDATE CURRENT_TIMESTAMP子句,这个时间戳会自动更新,否则该列有一个默认的常量但不会自动更新。
可以使用当前的时间戳去初始化值和自动更新,或者是其中之一,也可以都不是。(比如,你在定义的时候可以指定自动更新,但并不初始化。)

mysql 数据类型TIMESTAMP用法的更多相关文章

  1. 关于MySQL数据类型timestamp的讨论

    在项目中用到了timestamp这个类型,该字段本意是用于存储改行记录的创建时间的,实际上这是一个很危险的设置: mysql官方文档上有这么一段话: The TIMESTAMP data type p ...

  2. MySQL数据类型DECIMAL用法

    MySQL DECIMAL数据类型用于在数据库中存储精确的数值.我们经常将DECIMAL数据类型用于保留准确精确度的列,例如会计系统中的货币数据. 要定义数据类型为DECIMAL的列,请使用以下语法: ...

  3. Mysql中timestamp用法详解

    前言:时间戳(timestamp),一个能表示一份数据在某个特定时间之前已经存在的. 完整的. 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间.使用数字签名技术产生的数据, 签名的对象包括了 ...

  4. MySQL数据类型DECIMAL用法详解

    MySQL DECIMAL数据类型用于在数据库中存储精确的数值.我们经常将DECIMAL数据类型用于保留准确精确度的列,例如会计系统中的货币数据. 要定义数据类型为DECIMAL的列,请使用以下语法: ...

  5. (转载)MySQL数据类型中DECIMAL的作用和用法

    (转载)http://database.51cto.com/art/201005/201651.htm 在MySQL数据类型中,例如INT,FLOAT,DOUBLE,CHAR,DECIMAL等,它们都 ...

  6. Mysql数据类型DECIMAL(M,D)用法

    在MySQL数据类型中,例如INT,FLOAT,DOUBLE,CHAR,DECIMAL等,它们都有各自的作用,下面我们就主要来介绍一下MySQL数据类型中的DECIMAL类型的作用和用法. 一般赋予浮 ...

  7. mysql之TIMESTAMP(时间戳)用法详解

    一.TIMESTAMP的变体 TIMESTAMP时间戳在创建的时候可以有多重不同的特性,如: 1.在创建新记录和修改现有记录的时候都对这个数据列刷新: ? 1 TIMESTAMP DEFAULT CU ...

  8. MySQL timestamp用法

    与timestamp类型相关的类型包括:date类型与datetime类型.date类型只包含日期部分,不包含时间部分,它的格式为'YYYY-MM-DD',支持的范围为'1000-01-01' to ...

  9. mysql之TIMESTAMP(时间戳)用法详解 [http://www.jb51.net/article/51794.htm]

    一.TIMESTAMP的变体 TIMESTAMP时间戳在创建的时候可以有多重不同的特性,如: 1.在创建新记录和修改现有记录的时候都对这个数据列刷新: TIMESTAMP DEFAULT CURREN ...

随机推荐

  1. Ajax实现文件上传的临时垃圾文件回收策略

    转载请注明原文出处:http://www.cnblogs.com/ygj0930/p/6126240.html 在我们web开发过程中,一个很重要的技术就是Ajax(异步传输).Ajax通过把数据从网 ...

  2. JavaWeb开发之网站实现文件上传功能

       转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6073505.html  一个功能完善的JavaWeb应用,必不可少的一个功能就是文件的上传.无论是用户的 ...

  3. maven-war-plugin 插件 web.xml 缺失时忽略

    我们很多时候开发Spring MVC 项目时我们完全可以使用Java Bean 和 Annotation 的方式来配置 Spring MVC 的 DispatcherServlet,而不再采用传统的 ...

  4. java sm4国密算法加密、解密

      java sm4国密算法加密.解密 CreationTime--2018年7月5日09点20分 Author:Marydon 1.准备工作 所需jar包: bcprov-jdk15on-1.59. ...

  5. Centos7 安装 docker-ce

    本文参考官网地址:https://docs.docker.com/install/linux/docker-ce/centos/#os-requirements 1.卸载旧版本的docker $ su ...

  6. RHEL7 MariaDB测试

    MariaDB安装及启动: yum groupinstall mariadb 启动mariadb systemctl restart mariadb systemctl enable mariadb ...

  7. iOS12 Network框架 自签名证书认证

    发布时间:2018-09-21   技术:iOS12 xcode10 golang1.11   概述 iOS12 苹果发布了新的网络框架Network,可以更方便地操作底层网络通信了.使用TLS也很方 ...

  8. 代理Proxy初探

    Proxy,也就是"代理"了. 意思就是.你不用去做,别人取代你去处理.比方说:租房.你仅仅要找到"我爱我家"中介,把全部的事情交给他们去代劳, "我 ...

  9. BackgroundWorker使用方法

    在做GUI界面程序的时候,经常会遇到执行长时间方法的需求,当执行长时间方法的同时,再去点击界面,界面就会出现“卡死.假死”的现象,这是因为界面GUI线程被阻塞而导致暂时无响应.解决的方法有很多种,下面 ...

  10. 收到新信息,弹出popup窗口提示