社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

MySQL强制变量重新计算

Normajean • 3 年前 • 1022 次点击  

我使用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
 
1022 次点击  
文章 [ 1 ]  |  最新文章 3 年前