home *** CD-ROM | disk | FTP | other *** search
/ Total C++ 2 / TOTALCTWO.iso / borland / 32snipit.pak / TBLLIST.C < prev    next >
C/C++ Source or Header  |  1997-05-06  |  3KB  |  80 lines

  1. // BDE32 3.x - (C) Copyright 1996 by Borland International
  2.  
  3. // tbllist.c
  4. #include "snipit.h"
  5.  
  6. //=====================================================================
  7. //  Function:
  8. //          TableList();
  9. //
  10. //  Description:
  11. //          This example shows how to get a list of tables that are
  12. //          in the working directory for the STANDARD database. 
  13. //=====================================================================
  14. void
  15. TableList(void)
  16. {
  17.     hDBIDb          hDb;            // Handle to the database
  18.     hDBICur         hCur;           // Handle to the list of tables
  19.     UINT16          uNumRecs = 100; // Maximum number of records to
  20.                                     // display
  21.     DBIResult       rslt;           // Return value from IDAPI function
  22.  
  23.     Screen("*** Getting a list of available tables ***\r\n");
  24.  
  25.     BREAK_IN_DEBUGGER();
  26.  
  27.     Screen("    Initializing IDAPI...");
  28.     if (InitAndConnect(&hDb) != DBIERR_NONE)
  29.     {                                        
  30.         Screen("\r\n*** End of Example ***");
  31.         return;
  32.     }
  33.  
  34.     Screen("    Setting the database directory...");
  35.     rslt = DbiSetDirectory(hDb, (pCHAR) szTblDirectory);
  36.     ChkRslt(rslt, "SetDirectory");
  37.  
  38.     Screen("    Get a list of the available tables...");
  39.     rslt = DbiOpenTableList(hDb, TRUE, TRUE, NULL, &hCur);
  40.     ChkRslt(rslt, "OpenTableList");
  41.             
  42.     // If the cursor is valid, display the tables in the working directory.
  43.     if (rslt == DBIERR_NONE)
  44.     {
  45.         Screen("    Display the tables (up to %d)...\r\n", uNumRecs);
  46.  
  47.         rslt = DbiSetToBegin(hCur);
  48.         ChkRslt(rslt, "SetToBegin");
  49.  
  50.         DisplayInMemoryTable(hCur, uNumRecs);
  51.  
  52.         rslt = DbiCloseCursor(&hCur);
  53.         ChkRslt(rslt, "CloseCursor");
  54.     }   
  55.  
  56.     Screen("\r\n    Get a list of the available files...");
  57.     rslt = DbiOpenFileList(hDb, NULL, &hCur);
  58.     ChkRslt(rslt, "OpenTableList");
  59.  
  60.     // If the cursor is valid, display the files in the working directory.
  61.     if (rslt == DBIERR_NONE)
  62.     {
  63.         Screen("    Display the files (up to %d)...\r\n", uNumRecs);
  64.  
  65.         rslt = DbiSetToBegin(hCur);
  66.         ChkRslt(rslt, "SetToBegin");
  67.  
  68.         DisplayInMemoryTable(hCur, uNumRecs);
  69.  
  70.         rslt = DbiCloseCursor(&hCur);
  71.         ChkRslt(rslt, "CloseCursor");
  72.     }
  73.         
  74.     Screen("\r\n    Close the database and exit IDAPI...");
  75.     CloseDbAndExit(&hDb);
  76.  
  77.     Screen("\r\n*** End of Example ***");
  78. }
  79.  
  80.