[問題] 一次性的判斷式已刪文

看板C_Sharp作者 (gorilla)時間9年前 (2014/10/27 07:17), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串1/2 (看更多)
各位前輩你們好,很謝謝你們花時間進來看這篇文章 最近製作一個小的監控警報系統 當 if 變數=1 會插入開始時間 else if 當變數=0 會插入結束時間 但是在設備還沒有啟動之前,就已經開始記錄結束時間, 當設備運轉也會連同把運轉內的時間記錄下來, 沒辦法當純只記錄啟動瞬間的時間,跟結束瞬間的時間。 不知道是否有前輩遇過像這種問題,可否分享經歷或指點方向給小弟,謝謝。 private void DisplayText(object sender, EventArgs e) { string b = data.Substring(2, 1); ///從設備回應回來的值,擷取出來 if (b == "1") ///當Y0 ON B會等於1 { timer2.Enabled = true; label1.Text = "運轉中"; ///圖示跟LABLE 轉換 DateTime time = DateTime.Now; //寫入開始時間 string dt = "yyyy-MM-dd hh:mm:ss"; string cn = "Provider = Microsoft.Jet.OLEDB.4.0; " + "Data Source=C:\\Users\\he-hsin\\desktop\\test\\main.mdb"; OleDbConnection db = new OleDbConnection(cn); db.Open(); String strSQL = "INSERT INTO start_time (starttime) VALUES ('" + time.ToString(dt) + "')"; OleDbCommand oleCmd = new OleDbCommand(strSQL, db); oleCmd.ExecuteNonQuery(); db.Close(); } else if (b=="0") ///當Y0 OFF B會等於0 { timer2.Enabled = false; label1.Text = "未運轉"; pictureBox1.Image = imageList1.Images[0]; ///圖示跟LABLE 轉換 DateTime time = DateTime.Now; //寫入結束時間 string dt = "yyyy-MM-dd hh:mm:ss"; string cn = "Provider = Microsoft.Jet.OLEDB.4.0; " + "Data Source=C:\\Users\\he-hsin\\desktop\\test\\main.mdb"; OleDbConnection db = new OleDbConnection(cn); db.Open(); String strSQL = "insert into end_time (endtime) VALUES ('" + time.ToString(dt) + "')"; OleDbCommand oleCmd = new OleDbCommand(strSQL, db); oleCmd.ExecuteNonQuery(); db.Close(); } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.189.142 ※ 文章網址: http://www.ptt.cc/bbs/C_Sharp/M.1414365426.A.1B2.html

10/27 09:07, , 1F
在資料庫板就跟你說過要用update了..
10/27 09:07, 1F

10/28 10:07, , 2F
當你抓到開始時間及結束時間時,update回db!這樣不行
10/28 10:07, 2F

10/30 23:08, , 3F
請善用變數作為比較基準值
10/30 23:08, 3F
文章代碼(AID): #1KJO3o6o (C_Sharp)
文章代碼(AID): #1KJO3o6o (C_Sharp)