ADO怎样Open数据表的同时得到数据库中的总的数据行数,该如何处理
答案:2 悬赏:20 手机版
解决时间 2021-03-19 02:48
- 提问者网友:自食苦果
- 2021-03-18 19:11
ADO怎样Open数据表的同时得到数据库中的总的数据行数,该如何处理
最佳答案
- 五星知识达人网友:轮獄道
- 2021-03-18 19:52
------解决方案--------------------------------------------------------
好象Open()的参数要为adOpenStatic才可以得到行数,大概是这样,记不清了。
------解决方案--------------------------------------------------------
m_pRecordset- GetFields()- Count;
这个是表中列的数,不是条数
open后有4个参数,后两个决定是否有count
------解决方案--------------------------------------------------------
对于sqlserver ,oledb驱动,
游标位置recordset.cursorlocation务必指定为adUseClient(3)
游标类型recordset.cursortype务必指定为adOpenStatic(3)
锁定类型recordset.locktype指定为adLockReadOnly(1)
这样就可以确保得到的.recordcount是记录数,如果采用服务端游标,则不一定甚至为-1
RecordCount 属性返回指示 Recordset 中记录数目的 Long 值。用 RecordCount 属性可查找 Recordset 对象中的记录数目。如果 ADO 无法确定记录数目或者提供者或游标类型不支持 RecordCount,则该属性返回 -1。读取已关闭的 Recordset 的 RecordCount 属性将产生错误。
Recordset 属性取决于提供者的功能和游标类型。对于仅向前游标,RecordCount 属性将返回 -1;对于静态或键集游标,将返回实际计数;而对于动态游标,则返回 -1 或实际计数,这取决于数据源。
------解决方案--------------------------------------------------------
好象Open()的参数要为adOpenStatic才可以得到行数,大概是这样,记不清了。
------解决方案--------------------------------------------------------
m_pRecordset- GetFields()- Count;
这个是表中列的数,不是条数
open后有4个参数,后两个决定是否有count
------解决方案--------------------------------------------------------
对于sqlserver ,oledb驱动,
游标位置recordset.cursorlocation务必指定为adUseClient(3)
游标类型recordset.cursortype务必指定为adOpenStatic(3)
锁定类型recordset.locktype指定为adLockReadOnly(1)
这样就可以确保得到的.recordcount是记录数,如果采用服务端游标,则不一定甚至为-1
RecordCount 属性返回指示 Recordset 中记录数目的 Long 值。用 RecordCount 属性可查找 Recordset 对象中的记录数目。如果 ADO 无法确定记录数目或者提供者或游标类型不支持 RecordCount,则该属性返回 -1。读取已关闭的 Recordset 的 RecordCount 属性将产生错误。
Recordset 属性取决于提供者的功能和游标类型。对于仅向前游标,RecordCount 属性将返回 -1;对于静态或键集游标,将返回实际计数;而对于动态游标,则返回 -1 或实际计数,这取决于数据源。
------解决方案--------------------------------------------------------
全部回答
- 1楼网友:等灯
- 2021-03-18 21:20
期待看到有用的回答!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯