- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在制作一个在 MySQL 中运行的计时器函数,它在启动计时器时将 start_time 设置为 MySQL CURRENT_TIMESTAMP。
当他们停止计时器时,我在 SQL 中计算时间差,并将其添加到时间中,并再次将 start_time 设置为 0。
UPDATE `time`
SET `time` = time + (UNIX_TIMESTAMP(CURRENT_TIMESTAMP)-UNIX_TIMESTAMP(start_time)),
`start_time` = '0000-00-00 00:00:00'
WHERE `id` = '1'
当我停止计时器时,它没有在查询中使用 start_time,而是先将其设置为 0000-00-00 00:00:00,所以我的时间实际上是 (time + (UNIX_TIMESTAMP(CURRENT_TIMESTAMP) - UNIX_TIMESTAMP('0000-00-00 00:00:00')))
,这不是正确的值。
CREATE TABLE IF NOT EXISTS `time` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`time` double NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`start_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
我该如何解决这个问题?
最佳答案
为什么不分两次更新呢?
UPDATE `time`
SET `time` = (time + (UNIX_TIMESTAMP(CURRENT_TIMESTAMP) - UNIX_TIMESTAMP(start_time)))
WHERE `id` = '1';
UPDATE `time`
`start_time` = '0000-00-00 00:00:00'
WHERE `id` = '1'
查看您的架构。默认值设置为该值,更新语句使用它的当前值。您是否事先更改了启动计时器的值?尝试在更新之前添加一个选择以查看 start_time 的值是多少。
我刚试过这个..
更新时间设置 start_time = '2011-08-28 17:02:47'其中 id = 1;
更新时间
SET time
= (time + (UNIX_TIMESTAMP(CURRENT_TIMESTAMP) - UNIX_TIMESTAMP(start_time))), 开始时间
= '0000-00-00 00:00:00' WHERE id
= '1';
and id = 1 及时得到了正确的数字。检查以确保 start_time 和 time 具有正确的值。
关于mysql - 更新集不相应地工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7223470/
我在 Java 中遇到异常处理问题,这是我的代码。当我尝试运行此行时出现编译器错误:throw new MojException("Bledne dane");。错误是: exception MojE
我刚刚开始学习asp.net。在你们的支持下,我希望我能从这个论坛学到更多东西。 我的问题是, 我在 asp.net 页面中有一个 TabContainer1,因为每个选项卡面板中有多个类似 (60)
我是一名优秀的程序员,十分优秀!