下面链接到这个问题背后的原因:NOW() for DATETIME InnoDB Transaction guaranteed?
因此,为了确保具有任意数量查询(例如20+查询)的单个事务具有100%的精确性和一致性,NOW()值跨多个表,使用NOW() (而不是当前时间戳)分配等效日期时间的php方法是什么?
发布于 2012-04-12 18:39:04
一种方法可以是:
<?php
$nowFormat = date('Y-m-d H:i:s');
$sql = "INSERT INTO table SET field='$nowFormat'";
$sql2 = "INSERT INTO table SET field='$nowFormat'";
...发布于 2012-04-12 18:34:04
在MySQL中这样做,所以根本不涉及PHP:
select @now := now();
insert into .... values (@now)
select from ... where x=@now
etc....发布于 2013-06-06 08:09:05
你可以:
<?
$now = time();
$sql = "INSERT INTO table SET field=FROM_UNIXTIME($now)";
$sql2 = "INSERT INTO table SET field=FROM_UNIXTIME($now)";
...这避免了时区或本地日期格式的任何可能问题。
https://stackoverflow.com/questions/10129180
复制相似问题