当前位置: 代码迷 >> 其他数据库 >> CEDB(CE自带)数据库使用有关问题
  详细解决方案

CEDB(CE自带)数据库使用有关问题

热度:4867   发布时间:2013-02-26 00:00:00.0
CEDB(CE自带)数据库使用问题
大家好,最近在EVC下用CE自带的数据库编程,感觉其中的指针移动函数CeSeekDatabase()用不好。
比如要读一条记录:
CListCtrl *pListCtrl=(CListCtrl *)GetDlgItem(IDC_LST_ADMISSIVE);
int iItemIndex=pListCtrl->GetNextItem(-1,LVNI_SELECTED);
ASSERT(iItemIndex!=-1);

  ceOid=CeSeekDatabase(m_hDB,CEDB_SEEK_BEGINNING,iItemIndex,&dwIndex);
  ASSERT(ceOid!=0);

  ceOid=CeReadRecordProps(m_hDB,CEDB_ALLOWREALLOC,&wProps,NULL,&(LPBYTE)pBuff,&dwRecSize);

必须在列表栏中选中要读的记录。

如果我要读第3条记录,就必须先选中列表框中的第三条记录。我想不用GetNextItem()函数,直接用CeSeekDatabase(m_hDB,CEDB_SEEK_BEGINNING,3,&dwIndex)将指针移到第三条记录,可是这样执行失败。

请问各位大侠,该怎么实现?

------解决方案--------------------------------------------------------
iItemIndex=3;
ceOid=CeSeekDatabase(m_hDB,CEDB_SEEK_BEGINNING,iItemIndex,&dwIndex);