C#向dataTable中插入数据预先,判断表中上一条记录是否和要插入的数据相等
C#!向dataTable中插入数据之前,判断表中上一条记录是否和要插入的数据相等。
是这用,我将串口接受的数据放在datatable中,并最后同时插入。其中datatable有是13个字段,ID(主键),starttime,stoptime,data1,data2。。。。data10。
现在想判断当前接收的数据是否和前一条接受的数据相同,!!!只判断data1~~~data10.如果相同,则更新stoptime
不同就将这行写入datatable中!
求大神指点!最后贴出代码!
------解决方案--------------------
1、SQL取ID最大值
2、重新组合SQL,where ID = 最大值 and 所有值都相等
3、if 有记录
修改
else
插入新记录
------解决方案--------------------
DataTable dt = GetData();
int i=dt.Rows.Count-1;
string s = dt.Rows[i]["data1"].ToString();//读取最后一条记录data1字段的值
if (s == "12")//判断
{
MessageBox.Show("相等");
}
else
{
dt.Rows[i]["data1"]="13"; //不相等就更新
}
是这用,我将串口接受的数据放在datatable中,并最后同时插入。其中datatable有是13个字段,ID(主键),starttime,stoptime,data1,data2。。。。data10。
现在想判断当前接收的数据是否和前一条接受的数据相同,!!!只判断data1~~~data10.如果相同,则更新stoptime
不同就将这行写入datatable中!
求大神指点!最后贴出代码!
------解决方案--------------------
1、SQL取ID最大值
2、重新组合SQL,where ID = 最大值 and 所有值都相等
3、if 有记录
修改
else
插入新记录
------解决方案--------------------
DataTable dt = GetData();
int i=dt.Rows.Count-1;
string s = dt.Rows[i]["data1"].ToString();//读取最后一条记录data1字段的值
if (s == "12")//判断
{
MessageBox.Show("相等");
}
else
{
dt.Rows[i]["data1"]="13"; //不相等就更新
}