问题描述
我是这么个思路,先将串口读上来的数据显示在textbox中,这一步早已经实现,现在我想先用很简陋没效率的方式将这个数据与原数据库存储的数据进行覆盖修改,思路就是将修改数据库表的某一行数据的代码用到这里,我串口读上来的数据的格式现在比较简陋,暂时不考虑传输协议,只是用空格将上传数据分为str_addrstr_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确实做出了正确的变化,而且这段代码是用的我修改某行数据的代码,之前验证可行,但是放到这儿数据库对应的那一行并没有变化。。。不知道为什么呢?请求大侠支招!(代码确实不规范,但我仅仅是做一个验证,最终肯定不会采纳这个思路,但是现在这个思路总是调不通!)
解决方案
解决方案二:
你的意思是修改dataset中的数据后数据库中数据没有变化?没有Update()?
解决方案三:
没有更新数据库语句嘛,你只是更新了dataset中的数据
解决方案四:
引用1楼的回复:
你的意思是修改dataset中的数据后数据库中数据没有变化?没有Update()?
有啊,我没贴上来,程序现在调的一直有bug,老是提示“对于不返回任何键列信息的SelectCommand,不支持UpdateCommand的动态SQL生成。”,悲了个催的