|
<< Click to Display Table of Contents >> DbiCreateInMemTable |
![]() ![]()
|
C syntax
DBIResult DBIFN DbiCreateInMemTable (hDb, pszName, iFields, pfldDesc, phCursor);
Delphi syntax
function DbiCreateInMemTable (hDb: hDBIDb; pszName: PChar; iFields: Word; pfldDesc: pFLDDesc; var hCursor: hDBICur): DBIResult stdcall;
Description
DbiCreateInMemTable creates a temporary in-memory table.
Parameters |
||
hDb |
Type: hDBIDb |
(Input) |
Specifies the database handle. |
||
pszName |
Type: pCHAR |
(Input) |
Pointer to the table name. |
||
iFields |
Type: UINT16 |
(Input) |
Specifies the number of fields in the table. |
||
pfldDesc |
Type: pFLDDesc |
(Input) |
Pointer to an array of field descriptor (FLDDesc) structures. |
||
phCursor |
Type: phDBICur |
(Output) |
Pointer to the cursor handle. |
||
Usage
Only logical BDE field types are supported by the in-memory table. Physical field types are not supported. The table is kept in memory if possible, but it could be swapped to disk if the table becomes too big. Maximum table size is 512M with a maximum record size of 16K with a maximum of 1024 fields. Logical Autoincrement and BLOB fields are not supported. Indexes are not supported. Records cannot be deleted (DbiDeleteRecord). DbiGetExactRecordCount (Delphi's TTable.RecordCount or C++Builder's TTable::RecordCount) is not supported; instead use DbiGetRecordCount.
Completion state
This function returns a cursor on the temporary table in phCursor. The table will be deleted when the cursor is closed.
DbiResult |
Meaning |
DBIERR_NONE |
The table was created successfully. |
DBIERR_NODISKSPACE |
The table could not be saved to disk due to lack of space. |
See also