【问题标题】:WordPress Database: Custom table: sprintf value for DateTime columnWordPress 数据库:自定义表:DateTime 列的 sprintf 值
【发布时间】:2015-12-02 13:04:37
【问题描述】:

我正在按照 wpdb 类参考上的插入示例创建一个插入查询。什么 sprintf 之类的占位符应该用于自定义表上的 DateTime 列?允许的占位符似乎是 %s(字符串)、%d(整数)和 %f(浮点数)。在下面的示例中,我已将 DateTime 列设置为使用 %s 字符串值,这是否正确?

下面的例子简化了我的情况。

表创建

global $wpdb;
$sql = "CREATE TABLE $wpdb->prefix. 'time' (
       id bigint(20) NOT NULL AUTO_INCREMENT,
       time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
       UNIQUE KEY id (id)
       )";
require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
dbDelta( $sql );

插入

$wpdb->insert(
    $wpdb->prefix. 'time',
    array(
        'time' => current_time( 'mysql' )
    ),
    array(
        '%s'
    )
);

我一直在使用的 wpdb 类参考链接如下。 http://codex.wordpress.org/Class_Reference/wpdb#Placeholders

【问题讨论】:

    标签: wordpress


    【解决方案1】:

    在我的演示站点上对此进行测试后,它似乎工作得非常好,只需将 DateTime 列存储为 %s(字符串)。像这样插入后,数据库完全按照预期报告 DateTime 列。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-20
      • 2019-01-30
      • 2015-01-22
      • 2011-03-24
      • 2014-11-30
      • 2017-02-27
      • 2016-03-03
      相关资源
      最近更新 更多