※ 引述《xep72345 (gorilla)》之銘言:
各位前輩你們好,很謝謝你們花時間進來看這篇文章
最近製作一個小的監控警報系統
當
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();
}
}