2009-12-16 105 views
0

我在MySQL的具有1个由5个字段构成表的数据库。 其中两个字段是FLOAT,由RAND函数生成;现在我想每x次更改一次这些值,例如数值必须每隔0.01秒更改一次以模拟金融市场。 有没有办法做这件事? 感谢MySQL的随机值变化

+0

如何做一个随机数,每0.01秒模拟金融市场?你会疯狂的波动。当然,如果只是为了测试数据库的负载,我就可以得到它。 – 2009-12-16 10:15:16

+0

我想设置0.01秒来测试我的电脑的CPU和RAM的使用情况;然后我将会把定时器3或4秒... – Franky 2009-12-16 10:25:34

回答

0

为什么你需要直接在表中更改这些值?每0.01秒更新一次数据库将会是一项巨大的负担。也许你可以做到服务器端,或者也许用Javascript的事件?

+0

我感兴趣的是服务器端的解决方案,因为我已经创造了Flex的一个客户端,它必须跟这有可能改变数值的远程服务器。 你能解释我该怎么做? 谢谢 – Franky 2009-12-16 10:11:26

0

因为它听起来像你只是测试,你可以在一个shell脚本做到这一点。事情是这样的:

while [ true ] do 
    mysql -sse "update test.rand_table set rand_column = rand();" 
    sleep 0.01 
done 

存储的过程可能会更有效,因为它可以重新使用相同的连接:

DELIMITER $$ 

DROP PROCEDURE IF EXISTS test.UPDATE_RANDOM_TABLE $$ 

CREATE PROCEDURE test.UPDATE_RANDOM_TABLE() 
BEGIN 
    WHILE TRUE 
    DO 
    update test.rand_Table set rand_column = rand(); 
    select sleep(0.01); 
    END WHILE; 
END $$ 

DELIMITER ;