PHP:安全地将 mySQL 中的字段日期从 'datetime' 转换为 'unix timestamp' 而不会丢失数据

标签 php mysql sql unix datetime

问题

我需要从实际的 datetime 格式字段 date 安全地转换 mySQL 数据库表 MYTABLE 中的日期格式:例如2013-09-10 12:43:03,与其 unix 时间戳 等效:1378816983,不会影响数据库中已有的数千篇文章。

我正在使用 PHP、mySql、Drupal。

我的方法

我的脚步

  1. 将表字段类型从日期时间更改为时间戳[完成]

  2. 转换实际内容类型字段:timestamp [DONE]

  3. 使用 PHP strtotime() 或 MYSQL:UNIX_TIMESTAMP(date) 转换 4 个表中的现有文章数据字段

我需要有关 PT.3 的帮助

一个。对pt的算法有一点帮助。 3:

例如

  loop over all 4 tables {

       - create a new column date2 of type: int (or datetime?) 
       - copy all dates from date to date2 passing them through strtotime()
       - delete column date
       - rename column date2 to column date

}

最佳答案

  1. 备份表
  2. 检查备份是否正确安全
  3. 将表字段类型从 datetime 更改为 varchar
  4. 更新表 set field=unix_timestamp(field)
  5. 将表字段类型从 varchar 更改为 int

但是我根本不会做这样的转换

关于PHP:安全地将 mySQL 中的字段日期从 'datetime' 转换为 'unix timestamp' 而不会丢失数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18739648/

相关文章:

php - 如何在不影响 phpMyAdmin 的情况下从 mysql 中巧妙地删除 pma 表

php - 将纪元时间转换为日期 PHP

php - 无法更新mysql数据库中的+1票

mysql - 在相互引用的表中使用外键的正确方法是什么

php - 如何从表中获取所有数据(包括表 ID)

php - 我如何使用谷歌地图 API 找到给定位置附近的位置

php - PHP 应用程序和 Ruby 应用程序之间的通信、传递信息

php - 在表中显示 MYSQL 数据库中的数据(不单独)

php - URL参数中的加密值(mcrypt_encrypt)在请求时产生不同的结果。如何处理这种情况?

java - 在列上使用别名的查询会出错