Py学习  »  DATABASE

MySQL强制变量重新计算

Normajean • 3 年前 • 1129 次点击  

我使用MySQL的事件调度器定期执行代码,即每天或每小时。在我的代码中,我使用“CURDATE()”并将其分配给一个变量。不幸的是,MySQL只在第一个实例中计算。它不会在每次迭代中重新计算它,这意味着第一次通过它时会有正确的日期,但之后每次都会有错误的日期。如果我手动运行代码(即不使用事件调度器),也会发生同样的情况。

如何强制MySQL重新计算变量?

我试过这个(这只第一次有效):

SET @stmt := CONCAT('ALTER TABLE myTable ADD myColum_', DATE_FORMAT(NOW(), '%Y_%M_%D_%H_%m'), ' SMALLINT(5);');
PREPARE stmt from @stmt;
EXECUTE stmt;

还有这个(这个第一次都不管用):

PREPARE stmt from ALTER TABLE myTable ADD
CONCAT('myColumn_', DATE_FORMAT(NOW(), '%Y_%M_%D_%H_%mm'), '
SMALLINT(5);'); EXECUTE stmt;
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/131596
 
1129 次点击  
文章 [ 1 ]  |  最新文章 3 年前