开发人员经过详细测试,确定这个是.net的oledb驱动自身的bug,暂时没有办法处理。
目前解决方法是:
1、分2步,把返回表格数据的sql提取出来,另外执行,也就是先执行存储过程更改数据,在另外执行sql返回表格数据
2、使用其它.net数据库驱动处理,比如:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=159738&replyID=&skin=1,测试代码
Dim db = HySql.DataBaseFactory.CreateDatabase()
Dim dt As System.Data.DataTable = db.ExecuteDataSet(System.Data.CommandType.StoredProcedure, "p_F_AUTHNS",HySql.ParameterPair.GetPair("BUSERID", "1234567")).Tables(0)
MessageBox.show("Count=" & dt.Rows.Count)
If dt.rows.count > 0 Then
'MessageBox.Show("kk")
Tables("fr_test_Tblselect").DataSource = dt
Else
'MessageBox.Show("123")
End If