首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

Fields.Append不明白解决方案

2012-03-03 
Fields.Append不明白PrivateSubLoadcontrol(lPageAsLong)DimadoPrimaryRSAsADODB.RecordsetDimlPageCountA

Fields.Append不明白
Private   Sub   Loadcontrol(lPage   As   Long)

  Dim   adoPrimaryRS   As   ADODB.Recordset

  Dim   lPageCount   As   Long

  Dim   nPageSize   As   Integer

Dim   lCount   As   Long

 

'每页显示的纪录

  nPageSize   =   30

  Set   adoPrimaryRS   =   New   ADODB.Recordset

  adoPrimaryRS.Open   "select   姓名,密码,经验值   from   ask ",   conn,   adOpenStatic,   adLockOptimistic

 

  adoPrimaryRS.PageSize   =   nPageSize

  '页数

  lPageCount   =   adoPrimaryRS.PageCount

  If   lCurrentPage   >   lPageCount   Then

  lCurrentPage   =   lPageCount

  End   If

 

  adoPrimaryRS.AbsolutePage   =   lCurrentPage

  '定义另一个记录集

Dim   objrs   As   New   ADODB.Recordset

  '添加字段名称

For   lCount   =   0   To   adoPrimaryRS.Fields.Count   -   1

  objrs.Fields.Append   adoPrimaryRS.Fields(lCount).Name,   adVarChar,   adoPrimaryRS.Fields(lCount).DefinedSize

  Next

  '打开记录集

objrs.Open

  '将指定记录数循环添加到objrs中
 

  For   lCount   =   1   To   nPageSize
If   adoPrimaryRS.EOF   Or   adoPrimaryRS.BOF   Then
Exit   For
Else
  objrs.AddNew

  objrs!姓名   =   adoPrimaryRS!姓名

  objrs!密码   =   adoPrimaryRS!密码
  objrs!经验值   =   adoPrimaryRS!经验值
  adoPrimaryRS.MoveNext
End   If
  Next

  '绑定

  Set   DataGrid1.DataSource   =   objrs

 

  '在文本框显示页数

  txtPage   =   lPage   &   "/ "   &   adoPrimaryRS.PageCount

End   Sub

  以下这段代码是什么意思,
objrs.Fields.Append   adoPrimaryRS.Fields(lCount).Name,   adVarChar,   adoPrimaryRS.Fields(lCount).DefinedSize
为什么”objrs!经验值   =   adoPrimaryRS!经验值“会报错呢,说是不能追加纪录为NULL,而且在sql语句中“select   姓名   as   'name '”的时候也出错,不知道是是为什么,请大伙多多帮忙了!

[解决办法]
就是在表中增加字段,这个说起来太多了,你可以看看msdn。或找一本关于ado方面的书看看。

热点排行