2012-02-17 33 views
-3

好是問我的問題的一個更好的辦法:設置定時器在本地執行的DB行每隔1秒

void PrepareTimers(List<int> _dataValues) 
    { 
     foreach (int dataValue in _dataValues) 
     { 
      ThreadingTimer timer = new ThreadingTimer(TimerAction, dataValue, 0, 1000); 

     } 
    } 

    void TimerAction(object flag) 
    { 
     string myconstring = "SERVER=localhost;" + "DATABASE=alicosms;" + "UID=root;" + "PASSWORD=;"; 
     MySqlConnection mycon = new MySqlConnection(myconstring); 
     string u = "UPDATED"; 
     mycon.Open(); 
     MySqlCommand cmd = new MySqlCommand("UPDATE sms_data_bankasia set flag= @flag * 2 , sendingstatus = '" + u + "' WHERE flag = @flag", mycon); 
     MySqlParameter param = new MySqlParameter(); 
     param.ParameterName = "@flag"; 
     param.Value = flag; 
     cmd.Parameters.Add(param); 
     cmd.ExecuteNonQuery(); 
    } 

ThreadTimer給了我一個錯誤說「命名空間/類型找不到」。任何修復?

+0

你是如何編程計時器來完成任務的?它有問題嗎?你有什麼錯誤嗎? – Beatles1692 2012-02-17 01:31:45

+2

這個問題很少有研究。定時器在每次間隔完成時調用一個事件(我相信它叫做Tick)。您可以將此間隔設置爲1000,即一秒。 – psyklopz 2012-02-17 01:35:14

+0

現在,Timer1_tick中沒有詳細信息。我想要一個我可以編寫的腳本草圖,它自動更新表'shoutbox'中mysql'request'的行。有3列。 ID(auto_increment),NickName和Post。數據存儲很好,但現在我需要一個按鈕來檢索數據。我明顯不想要這個,我希望文本框自己更新,而不必創建一個按鈕來更新它。我以爲我需要一個計時器.. – DamageDz 2012-02-17 01:39:00

回答

3

框架中沒有命名爲ThreadingTimer的類型。假設你想要System.Threading.Timer,你應該添加using System.Threading;到你的文件的頂部(如果你沒有它),然後用Timer代替ThreadingTimer

+0

仍然給出錯誤..說它的一個ambigious參考 – DamageDz 2012-02-17 02:21:02

+0

你已經有一個類叫做定時器? – 2012-02-17 02:33:25

+0

@DamageDz,什麼是* full *錯誤信息?它應該說明它爲什麼是一個模棱兩可的參考。 – svick 2012-02-17 08:13:38