DBMOpenSeqScanCategory

Description
ƯÁ¤ Category¿¡ ¼ÓÇÏ´Â ·¹ÄÚµåµéÀ» primary/secondary key ¼ø¼­·Î Àбâ À§ÇÑ ½ºÄµ °ü¸®ÀÚ¸¦ ÃʱâÈ­ÇÑ´Ù

Syntax
DBMErr DBMOpenSeqScanCategory(TableId tableId, CatId catId, IndexFlag indexFlag, S32 offset, RecOrder recOrderFlag, ScanId* scanId);

Parameters
tableId Å×À̺íÀÇ ID
catId Category ID
indexFlag primary key Çʵå¿Í secondary key Çʵå Áß ³í¸®Àû ¼ø¼­ÀÇ ±âÁØÀÌ µÇ´Â Çʵ带 ¼±ÅÃÇÏ´Â Ç÷¡±×
DBM_PRIM : primary key Çʵå
DBM_SEC : secondary key Çʵå
offsetóÀ½À¸·Î ÀÐÀ» ·¹ÄÚµåÀÇ ¿ÀÇÁ¼Â
recOrderFlag·¹ÄÚµåÀÇ °Ë»ö ¼ø¼­
DBM_INCR : increasing order
DBM_DECR : decreasing order
scanId openµÈ ½ºÄµ ID ¹Ýȯ

Returns
value¼³¸í
DBM_OK¼º°øÀûÀ¸·Î ¼öÇàµÈ °æ¿ì
DBM_TOO_MANY_SCANSÀÌ¹Ì openµÈ ½ºÄµÀÇ ¼ö°¡ NUM_SCANSÀÎ °æ¿ì
DBM_INVALID_TABLE_ID ÁÖ¾îÁø Å×À̺í id¸¦ °®´Â Å×À̺íÀÌ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì
DBM_INVALID_CAT_IDÁÖ¾îÁø Category id¸¦ °®´Â Category°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì
DBM_DB_NOT_INITED µ¥ÀÌŸº£À̽º°¡ ÃʱâÈ­µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì

Comments
½ºÄµÀ» openÇÑ ÀÌÈÄ, ÃÖÃʷΠȣÃâµÇ´Â DBMGetNextRecordId ¶Ç´Â DBMGetPrevRecordId´Â óÀ½ ·¹ÄÚµå ID¸¦ ¹ÝȯÇÑ´Ù.

See Also
DBMGetNextRecordId, DBMGetPrevRecordId, DBMOpenSeqScanTable, DBMOpenSeqScanCategoryWithCursor, DBMOpenSeqScanCategory

Example

  TableId tableId; ScanId scanId;
  RecId recId; DBMErr ret=DBM_OK;
  int numFields, numExistFields; FieldDataInfo fieldDataInfo;
  FieldData keyData, fieldData;
  IndexFlag indexFlag = DBM_PRIM;
  CatId catId;
  int offset = 10;
  RecOrder recOrder=DBM_INCR;
  
  // Get tableId, catId
  ret = DBMOpenSeqScanCategory( tableId, catId, indexFlag, offset, recOrder, &scanId);
  if( ret < DBM_OK ) // error handling
  
  numFields = NUM_FIELDS;
  ...
  /* allocate space for fieldDataInfo */
  fieldDataInfo =(FieldDataInfo*)Lmalloc( sizeof(FieldDataInfo) * numFields );
  while( (ret = DBMGetNextRecordId( scanId, &recId, &numExistFields, fieldDataInfo) >= DBM_OK ) {
     ...
  }