------解决方案--------------------------------------------------------
好象Open()的参数要为adOpenStatic才可以得到行数,大概是这样,记不清了。
------解决方案--------------------------------------------------------
m_pRecordset- GetFields()- Count;
这个是表中列的数,不是条数
open后有4个参数,后两个决定是否有count
------解决方案--------------------------------------------------------
对于sqlserver ,oledb驱动,
游标位置recordsetcursorlocation务必指定为adUseClient(3)
游标类型recordsetcursortype务必指定为adOpenStatic(3)
锁定类型recordsetlocktype指定为adLockReadOnly(1)
这样就可以确保得到的recordcount是记录数,如果采用服务端游标,则不一定甚至为-1
RecordCount 属性返回指示 Recordset 中记录数目的 Long 值。用 RecordCount 属性可查找 Recordset 对象中的记录数目。如果 ADO 无法确定记录数目或者提供者或游标类型不支持 RecordCount,则该属性返回 -1。读取已关闭的 Recordset 的 RecordCount 属性将产生错误。
Recordset 属性取决于提供者的功能和游标类型。对于仅向前游标,RecordCount 属性将返回 -1;对于静态或键集游标,将返回实际计数;而对于动态游标,则返回 -1 或实际计数,这取决于数据源。
------解决方案--------------------------------------------------------
1、DataTable dtstu=new DataTable();
2、将学生表所有的数据加载到dtstu中;
3、传入参数n,即你要查询的指定行号,循环遍历dtstu每一列:
for(int col=0;col<dtstuColumnCount;col++)
{
textBoxAppendText(dtsutRows[n][col]ToString();//此处遍历第n行的每一列,并添加到textBox中。在此你可以将该行的内容赋值到你需要的位置。
}
以上就是关于ADO怎样Open数据表的同时得到数据库中的总的数据行数,该如何处理全部的内容,包括:ADO怎样Open数据表的同时得到数据库中的总的数据行数,该如何处理、ADO.NET 如何查询一个表中指定那行的数据,比如查找学生表中第三行的所有数据、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)