当前位置: 首页 > 面试题库 >

TIMESTAMPS在DATETIME字段上有多普遍?

秋和雅
2023-03-14
问题内容

我希望我的产品像其他所有Web产品一样,从数据库中提取数据信息并将其转换为用户的时区,然后再显示在页面上。我正在使用PHP和MySQL。

使用TIMESTAMP字段比使用DATETIME字段更常见吗?

从我的研究看来,使用DATETIME字段,我将不得不

  1. 将所有日期信息存储在UTC中
  2. date_default_timezone_set(‘UTC’)每次应用启动时调用
  3. 从使用date()基于当前日期/时间创建的日期中手动减去用户的UTC偏移时间
    从传递给date()并由其格式化的现有日期中手动减去用户的UTC偏移时间
    使用TIMESTAMPS作为日期字段,似乎在建立数据库连接时只需要运行以下命令:SET time_zone =’用户时区’(例如America / Los_Angelos)。

考虑到这一点,我可以推断出大多数人倾向于使用TIMESTAMP而不是DATETIME……这是准确的吗?


问题答案:

从这个位置:

SQL Server时间戳数据类型与时间或日期无关。SQL Server时间戳是二进制数字,指示在数据库中进行数据修改的相对顺序。时间戳数据类型最初是为了支持SQL Server恢复算法而实现的。

编辑:为回答您的问题,DATETIME被更常用,因为TIMESTAMP不能用于存储一般的日期/时间信息。



 类似资料:
  • 本文向大家介绍UNIX TIMESTAMPS和MySQL TIMESTAMPS有什么区别?,包括了UNIX TIMESTAMPS和MySQL TIMESTAMPS有什么区别?的使用技巧和注意事项,需要的朋友参考一下 在MySQL中,UNIX TIMESTAMPS存储为32位整数。另一方面,MySQL TIMESTAMPS也以类似的方式存储,但以可读的YYYY-MM-DD HH:MM:SS格式表示。

  • 问题内容: 因此,我需要更新Oracle数据库上的某些日期,该字段是datetime,但我只希望更新日期,而保留原样的时间…查询如下: 但是它覆盖了实地的小时,分​​钟和秒,我想更新日期,但我希望小时数保持不变,有什么想法吗? 问题答案: 您可以使用:

  • 问题内容: 我有一个带有DATETIME列的表。我想选择此datetime值并将其插入另一列。 我做到了(请注意:“ 2011-12-18 13:17:17”是前SELECT从DATETIME字段给我的值): 并得到 好的,我知道在其中放置未加引号的字符串是错误的,但是DATETIME首先只是一个字符串吗?什么 做 我摆在那里?我想要的只是可靠地将现有值转移到新的datetime字段… 编辑: 我

  • 问题内容: 我已经在该网站上搜索了所有可能的解决方案,但仍然找不到我的Pivot问题的答案。 我有一张包含以下数据的表。 我正在尝试使用以下输出创建枢轴(仅在Portfolio = P1的情况下) 理想情况下,我正在寻找动态枢纽,但是静态查询也可以,并且我可以尝试动态查询。 问题答案: 您需要先到 您的桌子。您可以使用以下查询进行操作: 输出: 注意: 所有 不可透视的字段都必须是 同一类型 。上

  • 本文向大家介绍添加DATE和TIME字段以在MySQL中获取DATETIME字段?,包括了添加DATE和TIME字段以在MySQL中获取DATETIME字段?的使用技巧和注意事项,需要的朋友参考一下 您可以使用函数设置日期和时间字段以获取DATETIME字段。 让我们创建一个演示表 使用insert命令在表中插入一些记录。查询如下- 使用select语句显示表中的所有记录。查询如下- 以下是输出

  • 问题内容: 我正在尝试从DATE和TIME字段获取DATETIME字段。MYSQL中的所有功能似乎都没有用。 有人知道该怎么做,或者甚至可以做到吗?:) 问题答案: 它应该像