[问题] 一次性的判断式

楼主: xep72345 (gorilla)   2014-10-27 07:17:03
各位前辈你们好,很谢谢你们花时间进来看这篇文章
最近制作一个小的监控警报系统

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();
}
}
作者: GoalBased (Artificail Intelligence)   2014-10-27 09:07:00
在数据库板就跟你说过要用update了..
作者: vivi303030 (wengogogogo)   2014-10-28 10:07:00
当你抓到开始时间及结束时间时,update回db!这样不行
作者: yishin0517 (回台湾了)   2014-10-30 23:08:00
请善用变量作为比较基准值

Links booklink

Contact Us: admin [ a t ] ucptt.com