返回顶部
首页 > 资讯 > 数据库 >MySQL中怎么选择时间类型存储格式
  • 485
分享到

MySQL中怎么选择时间类型存储格式

2024-04-02 19:04:59 485人浏览 安东尼
摘要

本篇文章给大家分享的是有关Mysql中怎么选择时间类型存储格式,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。int型:存储长度: 4字节表示范

本篇文章给大家分享的是有关Mysql中怎么选择时间类型存储格式,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。


int型:
存储长度: 4字节
表示范围: date('Y-m-d H:i:s', 4294967295) 最大到 2106-02-07 14:28:15 ,如果一个企业活过这么久,就需要数据库考虑 bigint 或者datetime类型了。
是否为空: 可以为空,但是业务逻辑设计建议设置非空
存储格式: 数值类型存储,节省空间
时区相关: 与时区无关
默认值 :  可以根据业务逻辑设置默认值为某个时间。
优点
  1 类型简单,cpu处理该字段的运算会比较快,占用字节小,节省空间。
  2 查询速度快。

datetime:
存储长度: 8字节
表示范围:'1000-01-01 00:00:00'-'9999-12-31 23:59:59'
是否为空: 允许为空值,可以自定义值,且insert和update操作不会自动修改其值。
储存格式: 以实际格式存储(Just stores what you have stored and retrieves the same thing which you have stored.)
时区相关: 与时区无关
默认值  : 不指定默认值的时候 mysql会初始化为'0000-00-00 00:00:00'
mysql> CREATE TABLE `tm` (
    -> `d1` int(10) unsigned NOT NULL default '0',
    -> `d2` timestamp NOT NULL default CURRENT_TIMESTAMP,
    -> `d3` datetime NOT NULL,
    -> `d4` timestamp NOT NULL default CURRENT_TIMESTAMP on update current_timestamp
    -> );
Query OK, 0 rows affected (0.02 sec)
mysql> insert into tm(d1,d4) values(1458612980,now());
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> select * from tm;
+------------+---------------------+---------------------+---------------------+
| d1         | d2                  | d3                  | d4                  |
+------------+---------------------+---------------------+---------------------+
| 1458612980 | 2016-03-22 10:16:20 | 2016-03-22 15:21:21 | 2016-03-22 10:16:20 |
| 1458612980 | 2016-03-22 15:22:17 | 0000-00-00 00:00:00 | 2016-03-22 15:22:17 |
+------------+---------------------+---------------------+---------------------+
2 rows in set (0.00 sec)
优点 显示直观,不需使用函数做转换
 
timestamp:
存储长度: 4字节
是否为空: 允许为空值,但是不可以自定义值,所以为空值时没有任何意义。
表示范围:'1970-01-01 00:00:01'-'2038-01-19 03:14:07
是否为空: 允许为空值,可以自定义值,且insert和update操作不会自动修改其值。
存储格式: 值以UTC格式保存,即以毫秒为单位的数字存储 ( it stores the number of milliseconds)
时区相关: 和时间相关,时区转化 ,存储时对当前的时区进行转换,检索时再转换回当前的时区。
默认值 :  可以设置为CURRENT_TIMESTAMP(),当前的系统时间。
gmt_modified timestamp not null default '0000-00-00 00:00:00' on update current_timestamp
字段属性加上 "on update current_timestamp",
1 在更新记录时不指定update timestamp字段的值,数据库会自动修改gmt_modified的值为当前系统的时间,
2 在插入记录时不指定timestamp字段和timestamp字段的值,插入后该字段的值会自动变为当前系统时间。
相比于 init 类型的 可以自动更新为系统当前时间,其他并无优势。
三 总结
 对于如何选型 ,有如下三种层面 性能,存储空间,时间范围 的考虑。这里我从时间范围和存储空间层面推荐使用 int 或者bigint ,datetime 类型。bigint和datetime 占用的空间一样,唯一的差异是在性能上可能存在差异。当然如果你服务的企业有存在  102年的梦想,那我建议直接使用 datetime类型。2038年的时候,虽然我们(80后)估计已经在家养老或者身居高层,为了避免给后来的运维人员留坑,建议不要使用 timestamp 字段。

以上就是MySQL中怎么选择时间类型存储格式,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中怎么选择时间类型存储格式

本文链接: https://lsjlt.com/news/58379.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL中怎么选择时间类型存储格式
    本篇文章给大家分享的是有关MySQL中怎么选择时间类型存储格式,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。int型:存储长度: 4字节表示范...
    99+
    2024-04-02
  • 如何解决MySQL存储时间类型选择的问题
    这篇文章主要为大家展示了“如何解决MySQL存储时间类型选择的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决MySQL存储时间类型选择的问题”这篇文...
    99+
    2024-04-02
  • MySQL 时间类型的选择
    目录DATETIMETIMESTAMP如何选择如何存储毫秒级时间结语MySQL 提供了 DATETIME 和 TIMESTAMP 两种非常相似的类型处理日期和时间,大部分情况下两种都是 OK 的,但是有些情况二者会互...
    99+
    2022-05-29
    MySQL 时间类型 MySQL 时间类型选择
  • 如何选择合适的MySQL日期时间类型来存储你的时间
    构建数据库写程序避免不了使用日期和时间,对于数据库来说,有多种日期时间字段可供选择,如 timestamp 和 datetime 以及使用 int 来存储 unix timestamp。 不仅新手,包括一些有经验的程...
    99+
    2022-05-20
    MySQL 日期时间类型 MySQL 日期时间
  • MySQL表类型 存储引擎 的选择
    目录1、查看当前数据库支出的存储引擎方法1:方法2:2、ENGINE={存储引起类型}  创建表的时候,设置存储引擎3、alter able tablename engin...
    99+
    2024-04-02
  • MySQL中的日期时间类型与格式化方式
    目录【1】mysql中的日期时间类型① 详细解释② SQL语句实例③ timestamp字段④ 测试实例【2】日期时间类型格式化 ① DATE_FORMAT( )函数② date_format( ) 转换格式③ str_...
    99+
    2022-07-04
    MySQL日期时间类型 MySQL日期格式化 时间日期类型
  • 关于mysql中时间日期类型和字符串类型的选择
    目录一、DATETIME、TIMESTAMP 的用法1、相同点2、不同点3、选择二、varchar 和 text 数据类型的用法1、相同点2、不同点3、选择一、DATETIME、TI...
    99+
    2024-04-02
  • oracle时间格式怎么选
    在选择 oracle 时间格式时,应根据业务需求、性能、存储空间和兼容性等因素进行考量。对于大多数应用程序,建议使用 date 存储日期,time 存储时间,timestamp 存储日期...
    99+
    2024-05-21
    oracle
  • MySQL中的日期时间类型与格式化方式是什么
    本篇内容介绍了“MySQL中的日期时间类型与格式化方式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2024-04-02
  • MySQL中怎么格式化时间
    这篇文章给大家介绍MySQL中怎么格式化时间,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。用法select...
    99+
    2024-04-02
  • mysql时间戳怎么存储
    mysql中时间戳以整数形式存储,表示自1970年1月1日utc午夜起经过的秒数。类型包括timestamp(自动更新)和datetime(非自动更新),精度范围为0-6(0表示无分数秒...
    99+
    2024-08-01
    mysql
  • mysql中怎么比较时间类型
    这篇文章给大家介绍mysql中怎么比较时间类型,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 相同 显示 TIMESTAMP列的显示格式与DATETIME列相同。换句话说,显示宽...
    99+
    2024-04-02
  • mysql存储json字符串选什么类型
    mysql存储json字符串选JSON数据类型,其好处有:1、允许存储任意结构的JSON数据,不需要提前定义明确的模式;2、可以直接在MySQL中对JSON数据进行查询、过滤、排序和聚合操作;3、采用有效的压缩和优化技术,减少存储空间的占用...
    99+
    2023-08-02
  • mysql时间类型怎么用
    mysql 提供了多种时间类型以存储时间相关信息,包括 datetime、timestamp、time、year 和 date。这些类型提供了从存储日期和时间到仅存储时间或年份的各种选项...
    99+
    2024-06-02
    mysql
  • 如何实现MySQL底层优化:数据类型选择与存储空间优化
    MySQL是一款广泛使用的关系型数据库管理系统,其底层优化对于数据库的性能和稳定性至关重要。本文将对MySQL数据类型选择与存储空间优化进行详细介绍,并给出具有实际意义的代码示例。一、数据类型选择与优化1.常见数据类型介绍MySQL支持多种...
    99+
    2023-11-08
    MySQL 数据类型 优化 存储空间优化
  • mysql中timestamp类型时间怎么修改
    在MySQL中,可以使用UPDATE语句来修改timestamp类型的时间。以下是一个示例: 假设有一个名为table_name的表...
    99+
    2024-04-09
    mysql
  • MySQL中使用binlog时格式该如何选择
    一、binlog的三种模式 1.statement level模式 每一条会修改数据的sql都会记录到master的bin-log中。slave在复制的时候sql进程会解析成和原来master端执行过的相同的sq...
    99+
    2022-05-31
    mysql binlog文件 mysqlbinlog查看日志 mysql binlog格式
  • mysql中什么是时间类型
    本篇文章给大家分享的是有关mysql中什么是时间类型,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。说明多种数据类型可用于表示日期和时间的表示。每一种时间类型都有一个有效的范围,...
    99+
    2023-06-20
  • 装win10分区时怎么选择格式
    今天小编给大家分享一下装win10分区时怎么选择格式的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。预装win10系统的电脑硬...
    99+
    2023-07-01
  • Hive中支持哪些类型的数据存储格式
    Hive中支持的数据存储格式包括: 文本文件格式(TextFile):将数据存储为文本文件格式,每行表示一条记录,字段间使用分隔...
    99+
    2024-03-11
    Hive
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作