Products Support Documentation Download
rdmdbapi.h
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2  * Raima Database Manager
3  *
4  * Copyright (c) 2014 Raima Inc., All rights reserved.
5  *
6  * Use of this software, whether in source code format, or in executable,
7  * binary object code form, is governed by the Raima LICENSE which
8  * is fully described in the LICENSE.TXT file, included within this
9  * distribution of files.
10  * ----------------------------------------------------------------------------
11  */
12 
13 /* PLEASE READ AND UNDERSTAND PRIOR TO MODIFYING THIS FILE
14  *
15  * This header file should contain the declarations for functions that are
16  * exported from the RDM runtime libarary as part of the published
17  * RDM_DB interface. These functions will be availabe for use by customers
18  * and other RDM modules, therefore they should all be declared with RDM_EXPORT
19  * and EXTERNAL_FCN.
20  *
21  * If the API takes a string as a parameter it should always use RDM_TCHAR_T
22  * and use a RDM_T_FUNC wrapper.
23  *
24  * This header file should only contain function definitions. Types,
25  * structures, enums etc. required for the RDM_DB interface (a parameter to one
26  * of the public APIs), should be declared in include/rdmtypes.h
27  *
28  */
29 
34 #include "rdmtypes.h"
35 #include "rdmrowidtypes.h"
36 #include "rdmtfstypes.h"
37 
38 #if defined(__cplusplus)
39 extern "C" {
40 #endif
41 
137 #if defined(RDM_UNICODE)
138 #define rdm_dbAlterCatalog RDM_T_FUNC (rdm_dbAlterCatalog)
139 #define rdm_dbEncrypt RDM_T_FUNC (rdm_dbEncrypt)
140 #define rdm_dbExport RDM_T_FUNC (rdm_dbExport)
141 #define rdm_dbGetOption RDM_T_FUNC (rdm_dbGetOption)
142 #define rdm_dbGetOptions RDM_T_FUNC (rdm_dbGetOptions)
143 #define rdm_dbGetInfo RDM_T_FUNC (rdm_dbGetInfo)
144 #define rdm_dbImport RDM_T_FUNC (rdm_dbImport)
145 #define rdm_dbOpen RDM_T_FUNC (rdm_dbOpen)
146 #define rdm_dbSetCatalog RDM_T_FUNC (rdm_dbSetCatalog)
147 #define rdm_dbSetCatalogFromFile RDM_T_FUNC (rdm_dbSetCatalogFromFile)
148 #define rdm_dbCompileCatalog RDM_T_FUNC (rdm_dbCompileCatalog)
149 #define rdm_dbCompileCatalogFromFile RDM_T_FUNC (rdm_dbCompileCatalogFromFile)
150 #define rdm_dbLoadCatalog RDM_T_FUNC (rdm_dbLoadCatalog)
151 #define rdm_dbLoadCatalogFromFile RDM_T_FUNC (rdm_dbLoadCatalogFromFile)
152 #define rdm_dbSetErrorHandler RDM_T_FUNC (rdm_dbSetErrorHandler)
153 #define rdm_dbSetOption RDM_T_FUNC (rdm_dbSetOption)
154 #define rdm_dbSetOptions RDM_T_FUNC (rdm_dbSetOptions)
155 #define rdm_dbVacuum RDM_T_FUNC (rdm_dbVacuum)
156 #endif
157 
185 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbAllocCursor (
186  RDM_DB db,
187  RDM_CURSOR *pCursor
188 );
189 
230 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbAlterCatalog (
231  RDM_DB db,
232  const RDM_TCHAR_T *ddlStmt
233 );
234 
235 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbClearCache (
236  RDM_DB db
237 );
238 
260 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbClose (
261  RDM_DB db
262 );
263 
296 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbDeleteAllRowsFromDatabase (
297  RDM_DB db
298 );
299 
338 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbDeleteAllRowsFromTable (
339  RDM_DB db,
341  tableId
342 );
343 
375 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbEncrypt (
376  RDM_DB db,
377  RDM_ENCRYPT enc,
378  const RDM_TCHAR_T *optString
380 );
381 
410 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbEnd (
411  RDM_DB db
412 );
413 
444 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbEndRollback (
445  RDM_DB db
446 );
447 
491 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbExport (
492  RDM_DB db,
493  const RDM_TCHAR_T *optString
495 );
496 
516 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbVacuum (
517  RDM_DB db,
518  const RDM_TCHAR_T *optString
520 );
521 
543 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbFlushIdIndex (
544  RDM_DB db
545 );
546 
567 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbRebuildIdIndex (
568  RDM_DB db
569 );
570 
593 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbCreateNewPackFile (
594  RDM_DB db
595 );
596 
617 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbFree (
618  RDM_DB db
619 );
620 
639 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetEncrypt (
640  RDM_DB db,
641  RDM_ENCRYPT *enc
642 );
643 
681 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetLockStatus (
682  RDM_DB db,
683  RDM_TABLE_ID tableId,
684  RDM_LOCK_STATUS *status
686 );
687 
707 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetOption (
708  RDM_DB db,
709  const RDM_TCHAR_T *keyword,
710  RDM_TCHAR_T *optValue,
711  size_t bytesIn,
712  size_t *bytesOut
713 );
714 
737 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetOptions (
738  RDM_DB db,
739  RDM_TCHAR_T *optString,
740  size_t bytesIn,
741  size_t *bytesOut
742 );
743 
764 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetInfo (
765  RDM_DB db,
766  const RDM_TCHAR_T *keyword,
767  RDM_TCHAR_T *infoString,
768  size_t bytesIn,
769  size_t *bytesOut
770 );
771 
810 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRows (
811  RDM_DB db,
812  RDM_TABLE_ID tableId,
813  RDM_CURSOR *pCursor
815 );
816 
869 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsAtRowId (
870  RDM_DB db,
871  RDM_TABLE_ID tableId,
872  RDM_ROWID_T rowId,
873  RDM_CURSOR *pCursor
875 );
876 
921 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKey (
922  RDM_DB db,
923  RDM_KEY_ID keyId,
924  RDM_CURSOR *pCursor
926 );
927 
992 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKeyAtKey (
993  RDM_DB db,
994  RDM_KEY_ID keyId,
995  const void *keyValue,
996  size_t len,
997  RDM_CURSOR *pCursor
999 );
1000 
1065 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKeyAtSearchKey (
1066  RDM_DB db,
1067  RDM_KEY_ID keyId,
1068  const RDM_SEARCH_KEY *keyValue,
1069  RDM_CURSOR *pCursor
1071 );
1072 
1142 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKeyInKeyRange (
1143  RDM_DB db,
1144  RDM_KEY_ID keyId,
1145  const void *startValue,
1146  size_t bytesInStartValue,
1147  const void *endValue,
1148  size_t bytesInEndValue,
1149  RDM_CURSOR *pCursor
1151 );
1152 
1216 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKeyInRangeKeyRange (
1217  RDM_DB db,
1218  RDM_KEY_ID keyId,
1219  const RDM_RANGE_KEY *startValue,
1220  const RDM_RANGE_KEY *endValue,
1221  RDM_CURSOR *pCursor
1223 );
1224 
1269 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKeyInRtreeKeyRange (
1270  RDM_DB db,
1271  RDM_KEY_ID keyId,
1272  const RDM_RTREE_KEY *keyValue,
1273  RDM_CURSOR *pCursor
1275 );
1276 
1342 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetRowsByKeyInSearchKeyRange (
1343  RDM_DB db,
1344  RDM_KEY_ID keyId,
1345  const RDM_SEARCH_KEY *startValue,
1346  const RDM_SEARCH_KEY *endValue,
1347  RDM_CURSOR *pCursor
1349 );
1350 
1367 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetTFS (
1368  RDM_DB db,
1369  RDM_TFS *pTFS );
1370 
1387 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetTFSType (
1388  RDM_DB db,
1389  TFS_TYPE *pTfsType
1390 );
1391 
1427 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbGetTransactionStatus (
1428  RDM_DB db,
1429  RDM_TRANS_STATUS *status
1431 );
1432 
1466 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbImport (
1467  RDM_DB db,
1468  const RDM_TCHAR_T *optString
1470 );
1471 
1522 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbInsertRow (
1523  RDM_DB db,
1524  RDM_TABLE_ID tableId,
1526  const void *colValues,
1532  size_t bytesIn,
1534  RDM_CURSOR *pCursor
1536 );
1537 
1586 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbInsertRows (
1587  RDM_DB db,
1588  RDM_TABLE_ID tableId,
1590  const void *colValues,
1596  size_t bytesIn,
1597  uint32_t num,
1599  RDM_CURSOR *pCursorStatus,
1604  RDM_CURSOR *pCursor
1608 );
1609 
1671 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbOpen (
1672  RDM_DB db,
1673  const RDM_TCHAR_T *dbNameSpec,
1674  RDM_OPEN_MODE mode
1675 );
1676 
1701 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbPersistInMemory (
1702  RDM_DB db
1703 );
1704 
1731 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbPrecommit (
1732  RDM_DB db
1733 );
1734 
1761 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbRebuildKey (
1762  RDM_DB db,
1763  RDM_KEY_ID keyId,
1764  uint32_t reportFrequency,
1766  *fcn
1767 );
1768 
1795 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbRebuildKeys (
1796  RDM_DB db,
1797  uint32_t numKeys,
1798  const RDM_KEY_ID *keyId,
1799  uint32_t reportFrequency,
1801  *fcn
1802 );
1803 
1856 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbReinsertRow (
1857  RDM_DB db,
1858  RDM_TABLE_ID tableId,
1859  RDM_ROWID_T rowId,
1860  const void *colValues,
1866  size_t bytesIn,
1868  RDM_CURSOR *pCursor
1870 );
1871 
1903 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbSetCatalog (
1904  RDM_DB db,
1905  const RDM_TCHAR_T
1906  *catalog
1907 );
1908 
1945 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbSetCatalogFromFile (
1946  RDM_DB db,
1947  const RDM_TCHAR_T *catfile
1948 );
1949 
1980 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbCompileCatalog (
1981  RDM_DB db,
1982  const RDM_TCHAR_T
1983  *schema
1984 );
1985 
2025 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbCompileCatalogFromFile (
2026  RDM_DB db,
2027  const RDM_TCHAR_T *schemafile
2028 );
2029 
2062 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbLoadCatalog (
2063  RDM_DB db,
2064  const RDM_TCHAR_T
2065  *catalog
2066 );
2067 
2106 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbLoadCatalogFromFile (
2107  RDM_DB db,
2108  const RDM_TCHAR_T *catfile
2109 );
2110 
2136 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbSetEncrypt (
2137  RDM_DB db,
2138  RDM_ENCRYPT enc
2140 );
2141 
2176 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbSetErrorHandler (
2177  RDM_DB db,
2178  RDM_ERROR_FCN errorFunction,
2180  void *userData
2182 );
2183 
2208 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbSetOption (
2209  RDM_DB db,
2210  const RDM_TCHAR_T *keyword,
2211  const RDM_TCHAR_T *strValue
2212 );
2213 
2252 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbSetOptions (
2253  RDM_DB db,
2254  const RDM_TCHAR_T *optString
2255 );
2256 
2321 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbStartRead (
2322  RDM_DB db,
2323  const RDM_TABLE_ID *tableIds,
2324  uint32_t numTableIds,
2325  RDM_TRANS *pTrans
2326 );
2327 
2364 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbStartSnapshot (
2365  RDM_DB db,
2366  const RDM_TABLE_ID *tableIds,
2367  uint32_t numTableIds,
2368  RDM_TRANS *pTrans
2369 );
2370 
2464 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbStartUpdate (
2465  RDM_DB db,
2466  const RDM_TABLE_ID *writeTableIds,
2467  uint32_t numWriteTableIds,
2468  const RDM_TABLE_ID *readTableIds,
2469  uint32_t numReadTableIds,
2470  RDM_TRANS *pTrans
2471 );
2472 
2491 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbTriggersOff (
2492  RDM_DB db
2493 );
2494 
2517 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbTriggersOn (
2518  RDM_DB db
2519 );
2520 
2546 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbTriggersStatus (
2547  RDM_DB db,
2549  *pStat
2550 );
2551 
2552 RDM_EXPORT RDM_RETCODE EXTERNAL_FCN rdm_dbRepair (
2553  RDM_DB db,
2554  const RDM_TCHAR_T *optString
2556 );
2557 
2558 #if defined(__cplusplus)
2559 }
2560 #endif
RDM_RETCODE rdm_dbGetOptions(RDM_DB db, RDM_TCHAR_T *optString, size_t bytesIn, size_t *bytesOut)
Get RDM database specific options.
void(* RDM_ERROR_FCN)(RDM_DB, RDM_RETCODE, const RDM_TCHAR_T *, void *)
Definition: rdmtypes.h:270
RDM_RETCODE rdm_dbInsertRows(RDM_DB db, RDM_TABLE_ID tableId, const void *colValues, size_t bytesIn, uint32_t num, RDM_CURSOR *pCursorStatus, RDM_CURSOR *pCursor)
Insert rows into a table.
RDM_RETCODE() RDM_REBUILD_INDEX_REPORT_FCN(const char *table, const char *indexes, uint64_t current, uint64_t total)
Callback function signature to report status on an ID-index rebuild.
Definition: rdmtypes.h:139
struct RDM_TRANS_S * RDM_TRANS
Definition: rdmtypes.h:267
RDM_LOCK_STATUS
Enumeration for RDM table lock status.
Definition: rdmtypes.h:115
RDM_RETCODE rdm_dbStartUpdate(RDM_DB db, const RDM_TABLE_ID *writeTableIds, uint32_t numWriteTableIds, const RDM_TABLE_ID *readTableIds, uint32_t numReadTableIds, RDM_TRANS *pTrans)
Get write locks.
struct RDM_CURSOR_S * RDM_CURSOR
Definition: rdmtypes.h:266
RDM_RETCODE rdm_dbSetErrorHandler(RDM_DB db, RDM_ERROR_FCN errorFunction, void *userData)
Replace default error reporting with a custom function.
RDM_RETCODE rdm_dbGetTFS(RDM_DB db, RDM_TFS *pTFS)
Get the RDM_TFS handle associated with a db.
Header for the native RDM Runtime types.
RDM_RETCODE rdm_dbStartSnapshot(RDM_DB db, const RDM_TABLE_ID *tableIds, uint32_t numTableIds, RDM_TRANS *pTrans)
Start a snapshot.
The RDM Partial Key data structure.
Definition: rdmtypes.h:33
RDM_RETCODE rdm_dbRebuildKeys(RDM_DB db, uint32_t numKeys, const RDM_KEY_ID *keyId, uint32_t reportFrequency, RDM_REBUILD_INDEX_REPORT_FCN *fcn)
Rebuild keys for one or more indexes.
RDM_RETCODE rdm_dbImport(RDM_DB db, const RDM_TCHAR_T *optString)
Database import API.
RDM_RETCODE rdm_dbTriggersOn(RDM_DB db)
Enable use of triggers for an open database.
RDM_RETCODE rdm_dbRebuildIdIndex(RDM_DB db)
Rebuild the database ID Index.
RDM_RETCODE rdm_dbDeleteAllRowsFromTable(RDM_DB db, RDM_TABLE_ID tableId)
Remove all rows from a table.
RDM_RETCODE rdm_dbEnd(RDM_DB db)
End a transactional operation.
RDM_RETCODE rdm_dbClose(RDM_DB db)
Close the database associated with a database handle.
RDM_RETCODE rdm_dbGetRows(RDM_DB db, RDM_TABLE_ID tableId, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with rows based on a table id.
The RDM Range Key data structure.
Definition: rdmtypes.h:78
RDM_RETCODE rdm_dbGetRowsByKey(RDM_DB db, RDM_KEY_ID keyId, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with a row set based on a key.
RDM_RETCODE rdm_dbGetLockStatus(RDM_DB db, RDM_TABLE_ID tableId, RDM_LOCK_STATUS *status)
Get the RDM_DB handle's current lock status of a table.
RDM_RETCODE rdm_dbVacuum(RDM_DB db, const RDM_TCHAR_T *optString)
Database vacuum API.
uint32_t RDM_TABLE_ID
Definition: rdmtypes.h:27
struct RDM_TFS_S * RDM_TFS
RDM TFS Handle.
Definition: rdmtfstypes.h:21
RDM_RETCODE rdm_dbTriggersStatus(RDM_DB db, RDM_TRIGGERS_STATUS *pStat)
Check the triggers use status for a database.
RDM_RETCODE rdm_dbSetCatalogFromFile(RDM_DB db, const RDM_TCHAR_T *catfile)
Associate a catalog with an allocated database.
RDM_RETCODE rdm_dbPrecommit(RDM_DB db)
Precommit a transactional operation (Two-Phase Commit phase 1)
RDM_RETCODE rdm_dbSetCatalog(RDM_DB db, const RDM_TCHAR_T *catalog)
Associate a catalog with an allocated database.
RDM_RETCODE rdm_dbGetOption(RDM_DB db, const RDM_TCHAR_T *keyword, RDM_TCHAR_T *optValue, size_t bytesIn, size_t *bytesOut)
Get a single database option into a string.
RDM_TRANS_STATUS
The RDM transaction status identifiers.
Definition: rdmtypes.h:94
RDM_RETCODE rdm_dbSetEncrypt(RDM_DB db, RDM_ENCRYPT enc)
Associate an encryption context with a database handle.
RDM_RETCODE rdm_dbLoadCatalogFromFile(RDM_DB db, const RDM_TCHAR_T *catfile)
Associate a catalog with an allocated database.
RDM_RETCODE rdm_dbAllocCursor(RDM_DB db, RDM_CURSOR *pCursor)
Allocate a cursor.
RDM_RETCODE rdm_dbSetOptions(RDM_DB db, const RDM_TCHAR_T *optString)
Set RDM options.
RDM_RETCODE rdm_dbGetRowsByKeyInRtreeKeyRange(RDM_DB db, RDM_KEY_ID keyId, const RDM_RTREE_KEY *keyValue, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with a row set based on a r-tree.
RDM_RETCODE rdm_dbFlushIdIndex(RDM_DB db)
Flush the database ID Index.
RDM_RETCODE rdm_dbRepair(RDM_DB db, const RDM_TCHAR_T *optString)
RDM_RETCODE
RDM status and error return codes.
RDM_RETCODE rdm_dbTriggersOff(RDM_DB db)
Disable use of triggers for an open database.
RDM_RETCODE rdm_dbStartRead(RDM_DB db, const RDM_TABLE_ID *tableIds, uint32_t numTableIds, RDM_TRANS *pTrans)
Get read locks.
RDM_RETCODE rdm_dbGetInfo(RDM_DB db, const RDM_TCHAR_T *keyword, RDM_TCHAR_T *infoString, size_t bytesIn, size_t *bytesOut)
Get RDM database information.
RDM_OPEN_MODE
Enumeration for open modes.
Definition: rdmtypes.h:208
RDM_RETCODE rdm_dbFree(RDM_DB db)
Free a database handle.
RDM_RETCODE rdm_dbCompileCatalog(RDM_DB db, const RDM_TCHAR_T *schema)
Associate a schema with an allocated database.
RDM_RETCODE rdm_dbGetRowsByKeyAtKey(RDM_DB db, RDM_KEY_ID keyId, const void *keyValue, size_t len, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with a row set that is ordered by key value and is initially positioned at th...
RDM_TRIGGERS_STATUS
Triggers status values.
Definition: rdmtypes.h:277
RDM_RETCODE rdm_dbReinsertRow(RDM_DB db, RDM_TABLE_ID tableId, RDM_ROWID_T rowId, const void *colValues, size_t bytesIn, RDM_CURSOR *pCursor)
Insert a new row into a table.
The RDM R-tree Key data structure.
Definition: rdmtypes.h:62
RDM_RETCODE rdm_dbGetTFSType(RDM_DB db, TFS_TYPE *pTfsType)
Get the type of the RDM_TFS handle associated with a database.
RDM_RETCODE rdm_dbCompileCatalogFromFile(RDM_DB db, const RDM_TCHAR_T *schemafile)
Associate a catalog with an allocated database.
RDM_RETCODE rdm_dbCreateNewPackFile(RDM_DB db)
Create a new pack file.
uint32_t RDM_KEY_ID
Definition: rdmtypes.h:29
RDM_RETCODE rdm_dbEndRollback(RDM_DB db)
End and rollback a transactional operation.
RDM_RETCODE rdm_dbGetRowsAtRowId(RDM_DB db, RDM_TABLE_ID tableId, RDM_ROWID_T rowId, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with rows based on a tableId and and rowId.
RDM_RETCODE rdm_dbRebuildKey(RDM_DB db, RDM_KEY_ID keyId, uint32_t reportFrequency, RDM_REBUILD_INDEX_REPORT_FCN *fcn)
Rebuild keys for an index.
RDM_RETCODE rdm_dbPersistInMemory(RDM_DB db)
Persist in-memory tables to disk.
RDM_RETCODE rdm_dbLoadCatalog(RDM_DB db, const RDM_TCHAR_T *catalog)
Associate a catalog with an allocated database.
struct RDM_DB_S * RDM_DB
Definition: rdmtypes.h:265
TFS_TYPE
Definition: rdmtfstypes.h:24
RDM_RETCODE rdm_dbGetRowsByKeyInRangeKeyRange(RDM_DB db, RDM_KEY_ID keyId, const RDM_RANGE_KEY *startValue, const RDM_RANGE_KEY *endValue, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with rows in a specified key range.
RDM_RETCODE rdm_dbDeleteAllRowsFromDatabase(RDM_DB db)
Remove all rows from a database.
RDM_RETCODE rdm_dbClearCache(RDM_DB db)
Header for the Transactional File Server (TFS) types.
uint64_t RDM_ROWID_T
Definition: rdmrowidtypes.h:21
RDM_RETCODE rdm_dbExport(RDM_DB db, const RDM_TCHAR_T *optString)
Database export API.
#define RDM_TCHAR_T
Definition: psptypes.h:134
RDM_RETCODE rdm_dbAlterCatalog(RDM_DB db, const RDM_TCHAR_T *ddlStmt)
Process a schema DDL command.
Header for row ID types.
struct RDM_ENCRYPT_S * RDM_ENCRYPT
Definition: psptypes.h:77
RDM_RETCODE rdm_dbGetRowsByKeyInKeyRange(RDM_DB db, RDM_KEY_ID keyId, const void *startValue, size_t bytesInStartValue, const void *endValue, size_t bytesInEndValue, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with rows in a specified key range.
RDM_RETCODE rdm_dbGetRowsByKeyAtSearchKey(RDM_DB db, RDM_KEY_ID keyId, const RDM_SEARCH_KEY *keyValue, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with a row set that is ordered by key value and is initially positioned at th...
RDM_RETCODE rdm_dbGetEncrypt(RDM_DB db, RDM_ENCRYPT *enc)
Get the encryption context associated with a database handle.
RDM_RETCODE rdm_dbEncrypt(RDM_DB db, RDM_ENCRYPT enc, const RDM_TCHAR_T *optString)
Encrypt a database.
RDM_RETCODE rdm_dbSetOption(RDM_DB db, const RDM_TCHAR_T *keyword, const RDM_TCHAR_T *strValue)
Set a single RDM option from a string.
RDM_RETCODE rdm_dbGetRowsByKeyInSearchKeyRange(RDM_DB db, RDM_KEY_ID keyId, const RDM_SEARCH_KEY *startValue, const RDM_SEARCH_KEY *endValue, RDM_CURSOR *pCursor)
Associate an RDM_CURSOR with rows in a specified key range.
RDM_RETCODE rdm_dbInsertRow(RDM_DB db, RDM_TABLE_ID tableId, const void *colValues, size_t bytesIn, RDM_CURSOR *pCursor)
Insert a new row into a table at the specified rowId.
RDM_RETCODE rdm_dbOpen(RDM_DB db, const RDM_TCHAR_T *dbNameSpec, RDM_OPEN_MODE mode)
Open an existing RDM database using the specified database handle.
RDM_RETCODE rdm_dbGetTransactionStatus(RDM_DB db, RDM_TRANS_STATUS *status)
Get the transaction status for a database handle.