我是这么个思路,先将串口读上来的数据显示在textbox中,这一步早已经实现,现在我想先用很简陋没效率的方式将这个数据与原数据库存储的数据进行覆盖修改,思路就是将修改数据库表的某一行数据的代码用到这里,我串口读上来的数据的格式现在比较简陋,暂时不考虑传输协议,只是用空格将上传数据分为str_addr str_data这种格式,先判断str_data是否为1,如果为1,那么才将str_addr对应的那一行表里面数据修改,否则不修改
附上这个部分的简陋代码: str = this.textBox2.Text;//textBox2即为显示从硬件采集上来的数据的文本框,可以正常显示硬件数据
str_data = str.Substring(str.LastIndexOf(" "));//传上来的数据由空格分开,前半是地址,后半是数据
str_addr = str.Substring(0, str.LastIndexOf(" ")); if (Convert.ToInt32(str_data) == 1)
{
button5.Text = str_addr;
thisDataSet.Tables["Table_Light"].Rows[Convert.ToInt32(str_addr)]["状态"] = "已连接";
}
else
{
}
其中button5.Text = str_addr;这一句是为了验证是否执行了我这个if语句,结果证明,button5的text确实做出了正确的变化,而且这段代码是用的我修改某行数据的代码,之前验证可行,但是放到这儿数据库对应的那一行并没有变化不知道为什么呢?请求大侠支招!(代码确实不规范,但我仅仅是做一个验证,最终肯定不会采纳这个思路,但是现在这个思路总是调不通!)
附上这个部分的简陋代码: str = this.textBox2.Text;//textBox2即为显示从硬件采集上来的数据的文本框,可以正常显示硬件数据
str_data = str.Substring(str.LastIndexOf(" "));//传上来的数据由空格分开,前半是地址,后半是数据
str_addr = str.Substring(0, str.LastIndexOf(" ")); if (Convert.ToInt32(str_data) == 1)
{
button5.Text = str_addr;
thisDataSet.Tables["Table_Light"].Rows[Convert.ToInt32(str_addr)]["状态"] = "已连接";
}
else
{
}
其中button5.Text = str_addr;这一句是为了验证是否执行了我这个if语句,结果证明,button5的text确实做出了正确的变化,而且这段代码是用的我修改某行数据的代码,之前验证可行,但是放到这儿数据库对应的那一行并没有变化不知道为什么呢?请求大侠支招!(代码确实不规范,但我仅仅是做一个验证,最终肯定不会采纳这个思路,但是现在这个思路总是调不通!)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货