7708 lines
291 KiB
ObjectPascal
7708 lines
291 KiB
ObjectPascal
|
{*******************************************************}
|
||
|
{ }
|
||
|
{ MiTeC Common Routines }
|
||
|
{ Microsoft ESENT database API interface }
|
||
|
{ (Extensible Storage Engine) }
|
||
|
{ Copyright (c) 2013 Michal Mutl }
|
||
|
{ }
|
||
|
{*******************************************************}
|
||
|
|
||
|
{$INCLUDE Compilers.inc}
|
||
|
|
||
|
unit MiTeC_ESENT;
|
||
|
|
||
|
{$ALIGN 4}
|
||
|
{$IFDEF UNICODE}
|
||
|
{$DEFINE JET_UNICODE}
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$DEFINE DYNAMIC_LINK}
|
||
|
|
||
|
interface
|
||
|
|
||
|
uses {$IFDEF RAD9PLUS}
|
||
|
WinAPI.Windows, System.SysUtils, System.Math
|
||
|
{$ELSE}
|
||
|
Windows, SysUtils, Math
|
||
|
{$ENDIF}
|
||
|
;
|
||
|
|
||
|
const
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
Suffix = 'W';
|
||
|
{$ELSE}
|
||
|
Suffix = 'A';
|
||
|
{$ENDIF}
|
||
|
|
||
|
JET_VERSION_WIN2000 = $0500; // Windows 2000
|
||
|
JET_VERSION_WINXP = $0501; // Windows XP
|
||
|
JET_VERSION_WIN2003 = $0502; // Windows Server 2003
|
||
|
JET_VERSION_WINVISTA = $0600; // Windows Vista / Windows Server 2008
|
||
|
JET_VERSION_WIN7 = $0601; // Windows 7
|
||
|
JET_VERSION_WIN8 = $0602; // Windows 8
|
||
|
|
||
|
JET_VERSION = JET_VERSION_WINXP;
|
||
|
|
||
|
type
|
||
|
long = LongInt;
|
||
|
PtrPointer = ^Pointer;
|
||
|
USHORT = Word;
|
||
|
|
||
|
type
|
||
|
JET_ERR = type LongInt;
|
||
|
|
||
|
JET_HANDLE = type Pointer; { backup file handle }
|
||
|
JET_INSTANCE = type Pointer; { Instance Identifier }
|
||
|
JET_SESID = type Pointer; { Session Identifier }
|
||
|
JET_TABLEID = type Pointer; { Table Identifier }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_LS = type Pointer; { Local Storage }
|
||
|
{$IFEND}
|
||
|
|
||
|
JET_COLUMNID = type Cardinal; { Column Identifier }
|
||
|
|
||
|
PJET_COLUMNID = ^JET_COLUMNID;
|
||
|
PJET_INSTANCE = ^JET_INSTANCE;
|
||
|
|
||
|
|
||
|
tagJET_INDEXID = record
|
||
|
cbStruct : Cardinal;
|
||
|
rgbIndexId: array[0..SizeOf(Pointer)+SizeOf(Cardinal)+SizeOf(Cardinal)-1] of AnsiChar;
|
||
|
end;
|
||
|
JET_INDEXID = tagJET_INDEXID;
|
||
|
PJET_INDEXID = ^JET_INDEXID;
|
||
|
|
||
|
JET_DBID = type Cardinal; { Database Identifier }
|
||
|
JET_OBJTYP = type Cardinal; { Object Type }
|
||
|
JET_COLTYP = type Cardinal; { Column Type }
|
||
|
JET_GRBIT = type Cardinal; { Group of Bits }
|
||
|
|
||
|
JET_SNP = type Cardinal; { Status Notification Process }
|
||
|
JET_SNT = type Cardinal; { Status Notification Type }
|
||
|
JET_DATESERIAL = type Cardinal; { JET_coltypDateTime format }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_CBTYP = type Cardinal; { Callback Types }
|
||
|
{$IFEND}
|
||
|
|
||
|
JET_PFNSTATUS = function(sesid: JET_SESID;
|
||
|
snp : JET_SNP;
|
||
|
snt : JET_SNT;
|
||
|
pv : Pointer
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
JET_PSTR = PAnsiChar; { ASCII string (char *) null terminated }
|
||
|
JET_PCSTR = PAnsiChar; { const ASCII string (char *) null terminated }
|
||
|
JET_PWSTR = PWideChar; { Unicode string (char *) null terminated }
|
||
|
JET_PCWSTR = PWideChar; { const Unicode string (char *) null terminated }
|
||
|
|
||
|
JET_RSTMAP_A = record
|
||
|
szDatabaseName : PAnsiChar;
|
||
|
szNewDatabaseName: PAnsiChar;
|
||
|
end;
|
||
|
PJET_RSTMAP_A = ^JET_RSTMAP_A;
|
||
|
|
||
|
JET_RSTMAP_W = record
|
||
|
szDatabaseName : PWideChar;
|
||
|
szNewDatabaseName: PWideChar;
|
||
|
end;
|
||
|
PJET_RSTMAP_W = ^JET_RSTMAP_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_RSTMAP = JET_RSTMAP_W;
|
||
|
{$ELSE}
|
||
|
JET_RSTMAP = JET_RSTMAP_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
|
||
|
tagCONVERT_A = record
|
||
|
szOldDll: PAnsiChar;
|
||
|
case Byte of
|
||
|
0: (fFlags: Cardinal);
|
||
|
1: (fSchemaChangesOnly: Cardinal); // one bit only used
|
||
|
end;
|
||
|
JET_CONVERT_A = tagCONVERT_A;
|
||
|
PJET_CONVERT_A = ^JET_CONVERT_A;
|
||
|
|
||
|
tagCONVERT_W = record
|
||
|
szOldDll: PWideChar;
|
||
|
case Byte of
|
||
|
0: (fFlags: Cardinal);
|
||
|
1: (fSchemaChangesOnly: Cardinal); // one bit only used
|
||
|
end;
|
||
|
JET_CONVERT_W = tagCONVERT_W;
|
||
|
PJET_CONVERT_W = ^JET_CONVERT_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_CONVERT = JET_CONVERT_W;
|
||
|
{$ELSE}
|
||
|
JET_CONVERT = JET_CONVERT_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
|
||
|
const
|
||
|
// Online defragmentation options
|
||
|
JET_bitDefragmentBatchStart = $00000001;
|
||
|
JET_bitDefragmentBatchStop = $00000002;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitDefragmentAvailSpaceTreesOnly = $00000040; { only defrag AvailExt trees }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitDefragmentNoPartialMerges = $00000080; { don't do partial merges during OLD }
|
||
|
JET_bitDefragmentBTree = $00000100; { defrag one B-Tree (testing only) }
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501} { Callback-function types }
|
||
|
JET_cbtypNull = $00000000;
|
||
|
JET_cbtypFinalize = $00000001; { a finalizable column has gone to zero }
|
||
|
JET_cbtypBeforeInsert = $00000002; { about to insert a record }
|
||
|
JET_cbtypAfterInsert = $00000004; { finished inserting a record }
|
||
|
JET_cbtypBeforeReplace = $00000008; { about to modify a record }
|
||
|
JET_cbtypAfterReplace = $00000010; { finished modifying a record }
|
||
|
JET_cbtypBeforeDelete = $00000020; { about to delete a record }
|
||
|
JET_cbtypAfterDelete = $00000040; { finished deleting the record }
|
||
|
JET_cbtypUserDefinedDefaultValue = $00000080; { calculating a user-defined default }
|
||
|
JET_cbtypOnlineDefragCompleted = $00000100; { a call to JetDefragment2 has completed }
|
||
|
JET_cbtypFreeCursorLS = $00000200; { the Local Storage associated with a cursor must be freed }
|
||
|
JET_cbtypFreeTableLS = $00000400; { the Local Storage associated with a table must be freed }
|
||
|
|
||
|
type
|
||
|
{ Callback-function prototype }
|
||
|
JET_CALLBACK = function(sesid : JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cbtyp : JET_CBTYP;
|
||
|
pvArg1 : Pointer;
|
||
|
pvArg2 : Pointer;
|
||
|
pvContext: Pointer;
|
||
|
ulUnused : Pointer
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
type
|
||
|
{ Status Notification Structures }
|
||
|
JET_SNPROG = record { Status Notification Progress }
|
||
|
cbStruct : Cardinal; { Size of this structure }
|
||
|
cunitDone : Cardinal; { Number of units of work completed }
|
||
|
cunitTotal: Cardinal; { Total number of units of work }
|
||
|
end;
|
||
|
|
||
|
JET_DBINFOUPGRADE = record
|
||
|
cbStruct: Cardinal;
|
||
|
cbFilesizeLow: Cardinal; // file's current size (low DWORD)
|
||
|
cbFilesizeHigh: Cardinal; // file's current size (high DWORD)
|
||
|
cbFreeSpaceRequiredLow: Cardinal; // estimate of free disk space required for in-place upgrade (low DWORD)
|
||
|
cbFreeSpaceRequiredHigh: Cardinal;// estimate of free disk space required for in-place upgrade (high DWORD)
|
||
|
csecToUpgrade: Cardinal; // estimate of time required, in seconds, for upgrade
|
||
|
ulFlags: Cardinal; // bits: 0=fUpgradable, 1=fAlreadyUpgraded
|
||
|
end;
|
||
|
|
||
|
|
||
|
JET_OBJECTINFO = record
|
||
|
cbStruct: Cardinal;
|
||
|
objtyp : JET_OBJTYP;
|
||
|
dtCreate: JET_DATESERIAL; // Deprecated.
|
||
|
dtUpdate: JET_DATESERIAL; // Deprecated.
|
||
|
grbit : JET_GRBIT;
|
||
|
flags : Cardinal;
|
||
|
cRecord : Cardinal;
|
||
|
cPage : Cardinal;
|
||
|
end;
|
||
|
|
||
|
const
|
||
|
{ The following flags appear in the grbit field above }
|
||
|
JET_bitTableInfoUpdatable = $00000001;
|
||
|
JET_bitTableInfoBookmark = $00000002;
|
||
|
JET_bitTableInfoRollback = $00000004;
|
||
|
|
||
|
{ The following flags occur in the flags field above }
|
||
|
|
||
|
JET_bitObjectSystem = $80000000; // Internal use only
|
||
|
JET_bitObjectTableFixedDDL = $40000000; // Table's DDL is fixed
|
||
|
JET_bitObjectTableTemplate = $20000000; // Table's DDL is inheritable (implies FixedDDL)
|
||
|
JET_bitObjectTableDerived = $10000000; // Table's DDL is inherited from a template table
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
// used in conjunction with JET_bitObjectTableTemplate to disallow
|
||
|
// fixed/var columns in derived tables (so that fixed/var columns
|
||
|
// may be added to the template in the future)
|
||
|
JET_bitObjectTableNoFixedVarColumnsInDerivedTables = $04000000;
|
||
|
{$IFEND}
|
||
|
|
||
|
type
|
||
|
JET_OBJECTLIST = record
|
||
|
cbStruct: Cardinal;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRecord: Cardinal;
|
||
|
columnidcontainername: JET_COLUMNID;
|
||
|
columnidobjectname: JET_COLUMNID;
|
||
|
columnidobjtyp: JET_COLUMNID;
|
||
|
columniddtCreate: JET_COLUMNID; // XXX -- to be deleted
|
||
|
columniddtUpdate: JET_COLUMNID; // XXX -- to be deleted
|
||
|
columnidgrbit: JET_COLUMNID;
|
||
|
columnidflags: JET_COLUMNID;
|
||
|
columnidcRecord: JET_COLUMNID; { Level 2 info }
|
||
|
columnidcPage: JET_COLUMNID; { Level 2 info }
|
||
|
end;
|
||
|
|
||
|
const
|
||
|
cObjectInfoCols = 9;
|
||
|
cColumnInfoCols = 14;
|
||
|
cIndexInfoCols = 15;
|
||
|
|
||
|
type
|
||
|
JET_COLUMNLIST = record
|
||
|
cbStruct: Cardinal;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRecord: Cardinal;
|
||
|
columnidPresentationOrder: JET_COLUMNID;
|
||
|
columnidcolumnname: JET_COLUMNID;
|
||
|
columnidcolumnid: JET_COLUMNID;
|
||
|
columnidcoltyp: JET_COLUMNID;
|
||
|
columnidCountry: JET_COLUMNID;
|
||
|
columnidLangid: JET_COLUMNID;
|
||
|
columnidCp: JET_COLUMNID;
|
||
|
columnidCollate: JET_COLUMNID;
|
||
|
columnidcbMax: JET_COLUMNID;
|
||
|
columnidgrbit: JET_COLUMNID;
|
||
|
columnidDefault: JET_COLUMNID;
|
||
|
columnidBaseTableName: JET_COLUMNID;
|
||
|
columnidBaseColumnName: JET_COLUMNID;
|
||
|
columnidDefinitionName: JET_COLUMNID;
|
||
|
end;
|
||
|
|
||
|
|
||
|
JET_COLUMNDEF = record
|
||
|
cbStruct: Cardinal;
|
||
|
columnid: JET_COLUMNID;
|
||
|
coltyp: JET_COLTYP;
|
||
|
wCountry: WORD;
|
||
|
langid: WORD;
|
||
|
cp: WORD;
|
||
|
wCollate: WORD; { Must be 0 }
|
||
|
cbMax: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
end;
|
||
|
PJET_COLUMNDEF = ^JET_COLUMNDEF;
|
||
|
|
||
|
|
||
|
JET_COLUMNBASE_A = record
|
||
|
cbStruct: Cardinal;
|
||
|
columnid: JET_COLUMNID;
|
||
|
coltyp: JET_COLTYP;
|
||
|
wCountry: WORD;
|
||
|
langid: WORD;
|
||
|
cp: WORD;
|
||
|
wFiller: WORD; { Must be 0 }
|
||
|
cbMax: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
szBaseTableName: array[0..256-1] of AnsiChar;
|
||
|
szBaseColumnName: array[0..256-1] of AnsiChar;
|
||
|
end;
|
||
|
|
||
|
|
||
|
JET_COLUMNBASE_W = record
|
||
|
cbStruct: Cardinal;
|
||
|
columnid: JET_COLUMNID;
|
||
|
coltyp: JET_COLTYP;
|
||
|
wCountry: WORD;
|
||
|
langid: WORD;
|
||
|
cp: WORD;
|
||
|
wFiller: WORD; { Must be 0 }
|
||
|
cbMax: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
szBaseTableName: array[0..256-1] of WideChar;
|
||
|
szBaseColumnName: array[0..256-1] of WideChar;
|
||
|
end;
|
||
|
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_COLUMNBASE = JET_COLUMNBASE_W;
|
||
|
{$ELSE}
|
||
|
JET_COLUMNBASE = JET_COLUMNBASE_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
|
||
|
JET_INDEXLIST = record
|
||
|
cbStruct: Cardinal;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRecord: Cardinal;
|
||
|
columnidindexname: JET_COLUMNID;
|
||
|
columnidgrbitIndex: JET_COLUMNID;
|
||
|
columnidcKey: JET_COLUMNID;
|
||
|
columnidcEntry: JET_COLUMNID;
|
||
|
columnidcPage: JET_COLUMNID;
|
||
|
columnidcColumn: JET_COLUMNID;
|
||
|
columnidiColumn: JET_COLUMNID;
|
||
|
columnidcolumnid: JET_COLUMNID;
|
||
|
columnidcoltyp: JET_COLUMNID;
|
||
|
columnidCountry: JET_COLUMNID;
|
||
|
columnidLangid: JET_COLUMNID;
|
||
|
columnidCp: JET_COLUMNID;
|
||
|
columnidCollate: JET_COLUMNID;
|
||
|
columnidgrbitColumn: JET_COLUMNID;
|
||
|
columnidcolumnname: JET_COLUMNID;
|
||
|
columnidLCMapFlags: JET_COLUMNID;
|
||
|
end;
|
||
|
|
||
|
|
||
|
|
||
|
tag_JET_COLUMNCREATE_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szColumnName: PAnsiChar; // column name
|
||
|
coltyp: JET_COLTYP; // column type
|
||
|
cbMax: Cardinal; // the maximum length of this column (only relevant for binary and text columns)
|
||
|
grbit: JET_GRBIT; // column options
|
||
|
pvDefault: Pointer; // default value (NULL if none)
|
||
|
cbDefault: Cardinal; // length of default value
|
||
|
cp: Cardinal; // code page (for text columns only)
|
||
|
columnid: JET_COLUMNID; // returned column id
|
||
|
err: JET_ERR; // returned error code
|
||
|
end;
|
||
|
JET_COLUMNCREATE_A = tag_JET_COLUMNCREATE_A;
|
||
|
PJET_COLUMNCREATE_A = ^JET_COLUMNCREATE_A;
|
||
|
|
||
|
tag_JET_COLUMNCREATE_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szColumnName: PWideChar; // column name
|
||
|
coltyp: JET_COLTYP; // column type
|
||
|
cbMax: Cardinal; // the maximum length of this column (only relevant for binary and text columns)
|
||
|
grbit: JET_GRBIT; // column options
|
||
|
pvDefault: Pointer; // default value (NULL if none)
|
||
|
cbDefault: Cardinal; // length of default value
|
||
|
cp: Cardinal; // code page (for text columns only)
|
||
|
columnid: JET_COLUMNID; // returned column id
|
||
|
err: JET_ERR; // returned error code
|
||
|
end;
|
||
|
JET_COLUMNCREATE_W = tag_JET_COLUMNCREATE_W;
|
||
|
PJET_COLUMNCREATE_W = ^JET_COLUMNCREATE_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_COLUMNCREATE = JET_COLUMNCREATE_W;
|
||
|
{$ELSE}
|
||
|
JET_COLUMNCREATE = JET_COLUMNCREATE_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
// This is the information needed to create a column with a user-defined default. It should be passed in using
|
||
|
// the pvDefault and cbDefault in a JET_COLUMNCREATE structure
|
||
|
|
||
|
tag_JET_USERDEFINEDDEFAULT_A = record
|
||
|
szCallback: PAnsiChar;
|
||
|
pbUserData: PByte;
|
||
|
cbUserData: Cardinal;
|
||
|
szDependantColumns: PAnsiChar;
|
||
|
end;
|
||
|
JET_USERDEFINEDDEFAULT_A = tag_JET_USERDEFINEDDEFAULT_A;
|
||
|
|
||
|
tag_JET_USERDEFINEDDEFAULT_W = record
|
||
|
szCallback: PWideChar;
|
||
|
pbUserData: PByte;
|
||
|
cbUserData: Cardinal;
|
||
|
szDependantColumns: PWideChar;
|
||
|
end;
|
||
|
JET_USERDEFINEDDEFAULT_W = tag_JET_USERDEFINEDDEFAULT_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_USERDEFINEDDEFAULT = JET_USERDEFINEDDEFAULT_W;
|
||
|
{$ELSE}
|
||
|
JET_USERDEFINEDDEFAULT = JET_USERDEFINEDDEFAULT_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
tagJET_CONDITIONALCOLUMN_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szColumnName: PAnsiChar; // column that we are conditionally indexed on
|
||
|
grbit: JET_GRBIT; // conditional column options
|
||
|
end;
|
||
|
JET_CONDITIONALCOLUMN_A = tagJET_CONDITIONALCOLUMN_A;
|
||
|
PJET_CONDITIONALCOLUMN_A = ^JET_CONDITIONALCOLUMN_A;
|
||
|
|
||
|
tagJET_CONDITIONALCOLUMN_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szColumnName: PWideChar; // column that we are conditionally indexed on
|
||
|
grbit: JET_GRBIT; // conditional column options
|
||
|
end;
|
||
|
JET_CONDITIONALCOLUMN_W = tagJET_CONDITIONALCOLUMN_W;
|
||
|
PJET_CONDITIONALCOLUMN_W = ^JET_CONDITIONALCOLUMN_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_CONDITIONALCOLUMN = JET_CONDITIONALCOLUMN_W;
|
||
|
{$ELSE}
|
||
|
JET_CONDITIONALCOLUMN = JET_CONDITIONALCOLUMN_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
tagJET_UNICODEINDEX = record
|
||
|
lcid: Cardinal;
|
||
|
dwMapFlags: Cardinal;
|
||
|
end;
|
||
|
JET_UNICODEINDEX = tagJET_UNICODEINDEX;
|
||
|
PJET_UNICODEINDEX = ^JET_UNICODEINDEX;
|
||
|
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
tagJET_TUPLELIMITS = record
|
||
|
chLengthMin: Cardinal;
|
||
|
chLengthMax: Cardinal;
|
||
|
chToIndexMax: Cardinal;
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
cchIncrement: Cardinal;
|
||
|
ichStart: Cardinal;
|
||
|
{$IFEND}
|
||
|
end;
|
||
|
JET_TUPLELIMITS = tagJET_TUPLELIMITS;
|
||
|
PJET_TUPLELIMITS = ^JET_TUPLELIMITS;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
// This structure describes some of the hints we can give to a given B-tree, be it a
|
||
|
// table, index, or the internal long values tree.
|
||
|
tagJET_SPACEHINTS = record
|
||
|
cbStruct: Cardinal; // size of this structure
|
||
|
ulInitialDensity: Cardinal; // density at (append) layout.
|
||
|
cbInitial: Cardinal; // initial size (in bytes).
|
||
|
|
||
|
grbit: JET_GRBIT; // Combination of one or more flags from
|
||
|
// JET_bitSpaceHints* flags
|
||
|
// JET_bitCreateHints* flags
|
||
|
// JET_bitRetrieveHints* flags
|
||
|
// JET_bitUpdateHints* flags
|
||
|
// JET_bitDeleteHints* flags
|
||
|
ulMaintDensity: Cardinal; // density to maintain at.
|
||
|
ulGrowth: Cardinal; // percent growth from:
|
||
|
// last growth or initial size (possibly rounded to nearest native JET allocation size).
|
||
|
cbMinExtent: Cardinal; // This overrides ulGrowth if too small.
|
||
|
cbMaxExtent: Cardinal; // This caps ulGrowth.
|
||
|
end;
|
||
|
JET_SPACEHINTS = tagJET_SPACEHINTS;
|
||
|
PJET_SPACEHINTS = ^JET_SPACEHINTS;
|
||
|
{$IFEND}
|
||
|
|
||
|
tagJET_INDEXCREATE_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szIndexName: PAnsiChar; // index name
|
||
|
szKey: PAnsiChar; // index key definition
|
||
|
cbKey: Cardinal; // length, in bytes, of szKey including the two terminating nulls
|
||
|
grbit: JET_GRBIT; // index options
|
||
|
ulDensity: Cardinal; // index density
|
||
|
locale: record case Byte of
|
||
|
0: (lcid: Cardinal); // lcid for the index (if JET_bitIndexUnicode NOT specified)
|
||
|
1: (pidxunicode: PJET_UNICODEINDEX); // pointer to JET_UNICODEINDEX struct (if JET_bitIndexUnicode specified)
|
||
|
end;
|
||
|
varcols: record case Byte of
|
||
|
0: (cbVarSegMac: Cardinal); // maximum length of variable length columns in index key (if JET_bitIndexTupleLimits specified)
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
1: (ptuplelimits: PJET_TUPLELIMITS); // pointer to JET_TUPLELIMITS struct (if JET_bitIndexTupleLimits specified)
|
||
|
{$IFEND}
|
||
|
end;
|
||
|
rgconditionalcolumn: PJET_CONDITIONALCOLUMN_A; // pointer to conditional column structure
|
||
|
cConditionalColumn: Cardinal; // number of conditional columns
|
||
|
err: JET_ERR; // returned error code
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
cbKeyMost: Cardinal; // size of key preserved in index, e.g. without truncation (if JET_bitIndexKeyMost specified)
|
||
|
{$IFEND}
|
||
|
end;
|
||
|
JET_INDEXCREATE_A = tagJET_INDEXCREATE_A;
|
||
|
PJET_INDEXCREATE_A = ^JET_INDEXCREATE_A;
|
||
|
|
||
|
tagJET_INDEXCREATE_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szIndexName: PWideChar; // index name
|
||
|
szKey: PWideChar; // index key definition
|
||
|
cbKey: Cardinal; // length, in bytes, of szKey including the two terminating nulls
|
||
|
grbit: JET_GRBIT; // index options
|
||
|
ulDensity: Cardinal; // index density
|
||
|
locale: record case Byte of
|
||
|
0: (lcid: Cardinal); // lcid for the index (if JET_bitIndexUnicode NOT specified)
|
||
|
1: (pidxunicode: PJET_UNICODEINDEX); // pointer to JET_UNICODEINDEX struct (if JET_bitIndexUnicode specified)
|
||
|
end;
|
||
|
varcols: record case Byte of
|
||
|
0: (cbVarSegMac: Cardinal); // maximum length of variable length columns in index key (if JET_bitIndexTupleLimits specified)
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
1: (ptuplelimits: PJET_TUPLELIMITS); // pointer to JET_TUPLELIMITS struct (if JET_bitIndexTupleLimits specified)
|
||
|
{$IFEND}
|
||
|
end;
|
||
|
rgconditionalcolumn: PJET_CONDITIONALCOLUMN_W; // pointer to conditional column structure
|
||
|
cConditionalColumn: Cardinal; // number of conditional columns
|
||
|
err: JET_ERR; // returned error code
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
cbKeyMost: Cardinal; // size of key preserved in index, e.g. without truncation (if JET_bitIndexKeyMost specified)
|
||
|
{$IFEND}
|
||
|
end;
|
||
|
JET_INDEXCREATE_W = tagJET_INDEXCREATE_W;
|
||
|
PJET_INDEXCREATE_W = ^JET_INDEXCREATE_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_INDEXCREATE = JET_INDEXCREATE_W;
|
||
|
{$ELSE}
|
||
|
JET_INDEXCREATE = JET_INDEXCREATE_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
|
||
|
tagJET_INDEXCREATE2_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szIndexName: PAnsiChar; // index name
|
||
|
szKey: PAnsiChar; // index key definition
|
||
|
cbKey: Cardinal; // length, in bytes, of szKey including the two terminating nulls
|
||
|
grbit: JET_GRBIT; // index options
|
||
|
ulDensity: Cardinal; // index density
|
||
|
locale: record case Byte of
|
||
|
0: (lcid: Cardinal); // lcid for the index (if JET_bitIndexUnicode NOT specified)
|
||
|
1: (pidxunicode: PJET_UNICODEINDEX); // pointer to JET_UNICODEINDEX struct (if JET_bitIndexUnicode specified)
|
||
|
end;
|
||
|
varcols: record case Byte of
|
||
|
0: (cbVarSegMac: Cardinal); // maximum length of variable length columns in index key (if JET_bitIndexTupleLimits specified)
|
||
|
1: (ptuplelimits: PJET_TUPLELIMITS); // pointer to JET_TUPLELIMITS struct (if JET_bitIndexTupleLimits specified)
|
||
|
end;
|
||
|
rgconditionalcolumn: PJET_CONDITIONALCOLUMN_A; // pointer to conditional column structure
|
||
|
cConditionalColumn: Cardinal; // number of conditional columns
|
||
|
err: JET_ERR; // returned error code
|
||
|
cbKeyMost: Cardinal; // size of key preserved in index, e.g. without truncation (if JET_bitIndexKeyMost specified)
|
||
|
pSpacehints: PJET_SPACEHINTS; // space allocation, maintenance, and usage hints
|
||
|
end;
|
||
|
JET_INDEXCREATE2_A = tagJET_INDEXCREATE2_A;
|
||
|
PJET_INDEXCREATE2_A = ^JET_INDEXCREATE2_A;
|
||
|
|
||
|
tagJET_INDEXCREATE2_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szIndexName: PWideChar; // index name
|
||
|
szKey: PWideChar; // index key definition
|
||
|
cbKey: Cardinal; // length, in bytes, of szKey including the two terminating nulls
|
||
|
grbit: JET_GRBIT; // index options
|
||
|
ulDensity: Cardinal; // index density
|
||
|
locale: record case Byte of
|
||
|
0: (lcid: Cardinal); // lcid for the index (if JET_bitIndexUnicode NOT specified)
|
||
|
1: (pidxunicode: PJET_UNICODEINDEX); // pointer to JET_UNICODEINDEX struct (if JET_bitIndexUnicode specified)
|
||
|
end;
|
||
|
varcols: record case Byte of
|
||
|
0: (cbVarSegMac: Cardinal); // maximum length of variable length columns in index key (if JET_bitIndexTupleLimits specified)
|
||
|
1: (ptuplelimits: PJET_TUPLELIMITS); // pointer to JET_TUPLELIMITS struct (if JET_bitIndexTupleLimits specified)
|
||
|
end;
|
||
|
rgconditionalcolumn: PJET_CONDITIONALCOLUMN_W; // pointer to conditional column structure
|
||
|
cConditionalColumn: Cardinal; // number of conditional columns
|
||
|
err: JET_ERR; // returned error code
|
||
|
cbKeyMost: Cardinal; // size of key preserved in index, e.g. without truncation (if JET_bitIndexKeyMost specified)
|
||
|
pSpacehints: PJET_SPACEHINTS; // space allocation, maintenance, and usage hints
|
||
|
end;
|
||
|
JET_INDEXCREATE2_W = tagJET_INDEXCREATE2_W;
|
||
|
PJET_INDEXCREATE2_W = ^JET_INDEXCREATE2_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_INDEXCREATE2 = JET_INDEXCREATE2_W;
|
||
|
{$ELSE}
|
||
|
JET_INDEXCREATE2 = JET_INDEXCREATE2_A;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
//
|
||
|
// Table Creation Structures
|
||
|
//
|
||
|
|
||
|
tagJET_TABLECREATE_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szTableName: PAnsiChar; // name of table to create.
|
||
|
szTemplateTableName: PAnsiChar; // name of table from which to inherit base DDL
|
||
|
ulPages: Cardinal; // initial pages to allocate for table.
|
||
|
ulDensity: Cardinal; // table density.
|
||
|
rgcolumncreate: PJET_COLUMNCREATE_A; // array of column creation info
|
||
|
cColumns: Cardinal; // number of columns to create
|
||
|
rgindexcreate: PJET_INDEXCREATE_A; // array of index creation info
|
||
|
cIndexes: Cardinal; // number of indexes to create
|
||
|
grbit: JET_GRBIT;
|
||
|
tableid: JET_TABLEID; // returned tableid.
|
||
|
cCreated: Cardinal; // count of objects created (columns+table+indexes).
|
||
|
end;
|
||
|
JET_TABLECREATE_A = tagJET_TABLECREATE_A;
|
||
|
|
||
|
tagJET_TABLECREATE_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szTableName: PWideChar; // name of table to create.
|
||
|
szTemplateTableName: PWideChar; // name of table from which to inherit base DDL
|
||
|
ulPages: Cardinal; // initial pages to allocate for table.
|
||
|
ulDensity: Cardinal; // table density.
|
||
|
rgcolumncreate: PJET_COLUMNCREATE_W; // array of column creation info
|
||
|
cColumns: Cardinal; // number of columns to create
|
||
|
rgindexcreate: PJET_INDEXCREATE_W; // array of index creation info
|
||
|
cIndexes: Cardinal; // number of indexes to create
|
||
|
grbit: JET_GRBIT;
|
||
|
tableid: JET_TABLEID; // returned tableid.
|
||
|
cCreated: Cardinal; // count of objects created (columns+table+indexes).
|
||
|
end;
|
||
|
JET_TABLECREATE_W = tagJET_TABLECREATE_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_TABLECREATE = JET_TABLECREATE_W;
|
||
|
{$ELSE}
|
||
|
JET_TABLECREATE = JET_TABLECREATE_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
tagJET_TABLECREATE2_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szTableName: PAnsiChar; // name of table to create.
|
||
|
szTemplateTableName: PAnsiChar; // name of table from which to inherit base DDL
|
||
|
ulPages: Cardinal; // initial pages to allocate for table.
|
||
|
ulDensity: Cardinal; // table density.
|
||
|
rgcolumncreate: PJET_COLUMNCREATE_A; // array of column creation info
|
||
|
cColumns: Cardinal; // number of columns to create
|
||
|
rgindexcreate: PJET_INDEXCREATE_A; // array of index creation info
|
||
|
cIndexes: Cardinal; // number of indexes to create
|
||
|
szCallback: PAnsiChar; // callback to use for this table
|
||
|
cbtyp: JET_CBTYP; // when the callback should be called
|
||
|
grbit: JET_GRBIT;
|
||
|
tableid: JET_TABLEID; // returned tableid.
|
||
|
cCreated: Cardinal; // count of objects created (columns+table+indexes+callbacks).
|
||
|
end;
|
||
|
JET_TABLECREATE2_A = tagJET_TABLECREATE2_A;
|
||
|
|
||
|
tagJET_TABLECREATE2_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szTableName: PWideChar; // name of table to create.
|
||
|
szTemplateTableName: PWideChar; // name of table from which to inherit base DDL
|
||
|
ulPages: Cardinal; // initial pages to allocate for table.
|
||
|
ulDensity: Cardinal; // table density.
|
||
|
rgcolumncreate: PJET_COLUMNCREATE_W; // array of column creation info
|
||
|
cColumns: Cardinal; // number of columns to create
|
||
|
rgindexcreate: PJET_INDEXCREATE_W; // array of index creation info
|
||
|
cIndexes: Cardinal; // number of indexes to create
|
||
|
szCallback: PWideChar; // callback to use for this table
|
||
|
cbtyp: JET_CBTYP; // when the callback should be called
|
||
|
grbit: JET_GRBIT;
|
||
|
tableid: JET_TABLEID; // returned tableid.
|
||
|
cCreated: Cardinal; // count of objects created (columns+table+indexes+callbacks).
|
||
|
end;
|
||
|
JET_TABLECREATE2_W = tagJET_TABLECREATE2_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_TABLECREATE2 = JET_TABLECREATE2_W;
|
||
|
{$ELSE}
|
||
|
JET_TABLECREATE2 = JET_TABLECREATE2_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
tagJET_TABLECREATE3_A = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szTableName: PAnsiChar; // name of table to create.
|
||
|
szTemplateTableName: PAnsiChar; // name of table from which to inherit base DDL
|
||
|
ulPages: Cardinal; // initial pages to allocate for table.
|
||
|
ulDensity: Cardinal; // table density.
|
||
|
rgcolumncreate: PJET_COLUMNCREATE_A; // array of column creation info
|
||
|
cColumns: Cardinal; // number of columns to create
|
||
|
rgindexcreate: PJET_INDEXCREATE2_A; // array of index creation info
|
||
|
cIndexes: Cardinal; // number of indexes to create
|
||
|
szCallback: PAnsiChar; // callback to use for this table
|
||
|
cbtyp: JET_CBTYP; // when the callback should be called
|
||
|
grbit: JET_GRBIT;
|
||
|
pSeqSpacehints: PJET_SPACEHINTS; // space allocation, maintenance, and usage hints for default sequential index
|
||
|
pLVSpacehints: PJET_SPACEHINTS; // space allocation, maintenance, and usage hints for Separated LV tree.
|
||
|
cbSeparateLV: Cardinal; // heuristic size to separate a intrinsic LV from the primary record
|
||
|
|
||
|
tableid: JET_TABLEID; // returned tableid.
|
||
|
cCreated: Cardinal; // count of objects created (columns+table+indexes+callbacks).
|
||
|
end;
|
||
|
JET_TABLECREATE3_A = tagJET_TABLECREATE3_A;
|
||
|
|
||
|
tagJET_TABLECREATE3_W = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
szTableName: PWideChar; // name of table to create.
|
||
|
szTemplateTableName: PWideChar; // name of table from which to inherit base DDL
|
||
|
ulPages: Cardinal; // initial pages to allocate for table.
|
||
|
ulDensity: Cardinal; // table density.
|
||
|
rgcolumncreate: PJET_COLUMNCREATE_W; // array of column creation info
|
||
|
cColumns: Cardinal; // number of columns to create
|
||
|
rgindexcreate: PJET_INDEXCREATE2_W; // array of index creation info
|
||
|
cIndexes: Cardinal; // number of indexes to create
|
||
|
szCallback: PWideChar; // callback to use for this table
|
||
|
cbtyp: JET_CBTYP; // when the callback should be called
|
||
|
grbit: JET_GRBIT;
|
||
|
pSeqSpacehints: PJET_SPACEHINTS; // space allocation, maintenance, and usage hints for default sequential index
|
||
|
pLVSpacehints: PJET_SPACEHINTS; // space allocation, maintenance, and usage hints for Separated LV tree.
|
||
|
cbSeparateLV: Cardinal; // heuristic size to separate a intrinsic LV from the primary record
|
||
|
tableid: JET_TABLEID; // returned tableid.
|
||
|
cCreated: Cardinal; // count of objects created (columns+table+indexes+callbacks).
|
||
|
end;
|
||
|
JET_TABLECREATE3_W = tagJET_TABLECREATE3_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_TABLECREATE3 = JET_TABLECREATE3_W;
|
||
|
{$ELSE}
|
||
|
JET_TABLECREATE3 = JET_TABLECREATE3_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
tagJET_OPENTEMPORARYTABLE = record
|
||
|
cbStruct: Cardinal; // size of this structure (for future expansion)
|
||
|
prgcolumndef: PJET_COLUMNDEF;
|
||
|
ccolumn: Cardinal;
|
||
|
pidxunicode :PJET_UNICODEINDEX;
|
||
|
grbit: JET_GRBIT;
|
||
|
prgcolumnid: PJET_COLUMNID;
|
||
|
cbKeyMost: Cardinal;
|
||
|
cbVarSegMac: Cardinal;
|
||
|
tableid: JET_TABLEID;
|
||
|
end;
|
||
|
JET_OPENTEMPORARYTABLE = tagJET_OPENTEMPORARYTABLE;
|
||
|
{$IFEND}
|
||
|
|
||
|
JET_RETINFO = record
|
||
|
cbStruct: Cardinal;
|
||
|
ibLongValue: Cardinal;
|
||
|
itagSequence: Cardinal;
|
||
|
columnidNextTagged: JET_COLUMNID;
|
||
|
end;
|
||
|
PJET_RETINFO = ^JET_RETINFO;
|
||
|
|
||
|
JET_SETINFO = record
|
||
|
cbStruct: Cardinal;
|
||
|
ibLongValue: Cardinal;
|
||
|
itagSequence: Cardinal;
|
||
|
end;
|
||
|
PJET_SETINFO = ^JET_SETINFO;
|
||
|
|
||
|
JET_RECPOS = record
|
||
|
cbStruct: Cardinal;
|
||
|
centriesLT: Cardinal;
|
||
|
centriesInRange: Cardinal;
|
||
|
centriesTotal: Cardinal;
|
||
|
end;
|
||
|
|
||
|
JET_RECORDLIST = record
|
||
|
cbStruct: Cardinal;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRecord: Cardinal;
|
||
|
columnidBookmark: JET_COLUMNID;
|
||
|
end;
|
||
|
|
||
|
JET_INDEXRANGE = record
|
||
|
cbStruct: Cardinal;
|
||
|
tableid: JET_TABLEID;
|
||
|
grbit: JET_GRBIT;
|
||
|
end;
|
||
|
PJET_INDEXRANGE = ^JET_INDEXRANGE;
|
||
|
|
||
|
const
|
||
|
JET_MAX_COMPUTERNAME_LENGTH = 15;
|
||
|
|
||
|
type
|
||
|
JET_LOGTIME = packed record
|
||
|
bSeconds: Byte; // 0 - 59
|
||
|
bMinutes: Byte; // 0 - 59
|
||
|
bHours : Byte; // 0 - 23
|
||
|
bDay : Byte; // 1 - 31
|
||
|
bMonth : Byte; // 1 - 12
|
||
|
bYear : Byte; // current year - 1900
|
||
|
flags1 : Byte; // Bits: 0=fTimeIsUTC, rest unused
|
||
|
bFiller2: Byte;
|
||
|
end;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
// the JET_BKLOGTIME is an extention of JET_LOGTIME to be used
|
||
|
// in the JET_BKINFO structure. They should have the same size for
|
||
|
// compatibility reasons
|
||
|
JET_BKLOGTIME = packed record
|
||
|
bSeconds: Byte; // 0 - 59
|
||
|
bMinutes: Byte; // 0 - 59
|
||
|
bHours : Byte; // 0 - 23
|
||
|
bDay : Byte; // 1 - 31
|
||
|
bMonth : Byte; // 1 - 12
|
||
|
bYear : Byte; // current year - 1900
|
||
|
flags1 : Byte; // Bits: 0=fTimeIsUTC, rest unused
|
||
|
flags2 : Byte; // Bits: 0=fOSSnapshot, rest reserved
|
||
|
end;
|
||
|
{$IFEND}
|
||
|
|
||
|
JET_LGPOS = packed record // be casted to TIME
|
||
|
ib: WORD; // must be the last so that lgpos can
|
||
|
isec: WORD; // index of disksec starting logsec
|
||
|
lGeneration: long; // generation of logsec
|
||
|
end;
|
||
|
|
||
|
JET_SIGNATURE = packed record
|
||
|
ulRandom: Cardinal; // a random number
|
||
|
logtimeCreate: JET_LOGTIME; // time db created, in logtime format
|
||
|
szComputerName: array[0..JET_MAX_COMPUTERNAME_LENGTH] of AnsiChar; // where db is created
|
||
|
end;
|
||
|
|
||
|
JET_BKINFO = packed record
|
||
|
lgposMark: JET_LGPOS; // id for this backup
|
||
|
logtimemark: record case Byte of
|
||
|
0: ( logtimeMark: JET_LOGTIME );
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
1: ( bklogtimeMark: JET_BKLOGTIME );
|
||
|
{$IFEND}
|
||
|
end;
|
||
|
genLow: Cardinal;
|
||
|
genHigh: Cardinal;
|
||
|
end;
|
||
|
|
||
|
JET_DBINFOMISC = record
|
||
|
ulVersion: Cardinal; // version of DAE the db created (see ulDAEVersion)
|
||
|
ulUpdate: Cardinal; // used to track incremental database format updates that are backward-compatible (see ulDAEUpdate)
|
||
|
signDb: JET_SIGNATURE; // (28 bytes) signature of the db (incl. creation time).
|
||
|
dbstate: Cardinal; // consistent/inconsistent state
|
||
|
lgposConsistent: JET_LGPOS; // null if in inconsistent state
|
||
|
logtimeConsistent: JET_LOGTIME; // null if in inconsistent state
|
||
|
logtimeAttach: JET_LOGTIME; // Last attach time.
|
||
|
lgposAttach: JET_LGPOS;
|
||
|
logtimeDetach: JET_LOGTIME; // Last detach time.
|
||
|
lgposDetach: JET_LGPOS;
|
||
|
signLog: JET_SIGNATURE; // (28 bytes) log signature for this attachments
|
||
|
bkinfoFullPrev: JET_BKINFO; // Last successful full backup.
|
||
|
bkinfoIncPrev: JET_BKINFO; // Last successful Incremental backup. Reset when bkinfoFullPrev is set
|
||
|
bkinfoFullCur: JET_BKINFO; // current backup. Succeed if a corresponding pat file generated.
|
||
|
fShadowingDisabled: Cardinal;
|
||
|
fUpgradeDb: Cardinal;
|
||
|
// NT version information. This is needed to decide if an index need
|
||
|
// be recreated due to sort table changes.
|
||
|
dwMajorVersion: Cardinal; { OS version info }
|
||
|
dwMinorVersion: Cardinal;
|
||
|
dwBuildNumber: Cardinal;
|
||
|
lSPNumber: long;
|
||
|
cbPageSize: Cardinal; // database page size (0 = 4k pages)
|
||
|
end;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_DBINFOMISC2 = record
|
||
|
ulVersion: Cardinal; // version of DAE the db created (see ulDAEVersion)
|
||
|
ulUpdate: Cardinal; // used to track incremental database format updates that are backward-compatible (see ulDAEUpdate)
|
||
|
signDb: JET_SIGNATURE; // (28 bytes) signature of the db (incl. creation time).
|
||
|
dbstate: Cardinal; // consistent/inconsistent state
|
||
|
lgposConsistent: JET_LGPOS; // null if in inconsistent state
|
||
|
logtimeConsistent: JET_LOGTIME; // null if in inconsistent state
|
||
|
logtimeAttach: JET_LOGTIME; // Last attach time.
|
||
|
lgposAttach: JET_LGPOS;
|
||
|
logtimeDetach: JET_LOGTIME; // Last detach time.
|
||
|
lgposDetach: JET_LGPOS;
|
||
|
signLog: JET_SIGNATURE; // (28 bytes) log signature for this attachments
|
||
|
bkinfoFullPrev: JET_BKINFO; // Last successful full backup.
|
||
|
bkinfoIncPrev: JET_BKINFO; // Last successful Incremental backup. Reset when bkinfoFullPrev is set
|
||
|
bkinfoFullCur: JET_BKINFO; // current backup. Succeed if a corresponding pat file generated.
|
||
|
fShadowingDisabled: Cardinal;
|
||
|
fUpgradeDb: Cardinal;
|
||
|
|
||
|
// NT version information. This is needed to decide if an index need
|
||
|
// be recreated due to sort table changes.
|
||
|
dwMajorVersion: Cardinal; { OS version info }
|
||
|
dwMinorVersion: Cardinal;
|
||
|
dwBuildNumber: Cardinal;
|
||
|
lSPNumber: long;
|
||
|
cbPageSize: Cardinal; // database page size (0 = 4k pages)
|
||
|
|
||
|
// new fields added on top of the above JET_DBINFOMISC
|
||
|
genMinRequired: Cardinal; // the minimum log generation required for replaying the logs. Typically the checkpoint generation
|
||
|
genMaxRequired: Cardinal; // the maximum log generation required for replaying the logs.
|
||
|
logtimeGenMaxCreate: JET_LOGTIME; // creation time of the genMax log file
|
||
|
|
||
|
ulRepairCount: Cardinal; // number of times repair has been called on this database
|
||
|
logtimeRepair: JET_LOGTIME; // the date of the last time that repair was run
|
||
|
ulRepairCountOld: Cardinal; // number of times ErrREPAIRAttachForRepair has been called on this database before the last defrag
|
||
|
|
||
|
ulECCFixSuccess: Cardinal; // number of times a one bit error was fixed and resulted in a good page
|
||
|
logtimeECCFixSuccess: JET_LOGTIME; // the date of the last time that a one bit error was fixed and resulted in a good page
|
||
|
ulECCFixSuccessOld: Cardinal; // number of times a one bit error was fixed and resulted in a good page before last repair
|
||
|
|
||
|
ulECCFixFail: Cardinal; // number of times a one bit error was fixed and resulted in a bad page
|
||
|
logtimeECCFixFail: JET_LOGTIME; // the date of the last time that a one bit error was fixed and resulted in a bad page
|
||
|
ulECCFixFailOld: Cardinal; // number of times a one bit error was fixed and resulted in a bad page before last repair
|
||
|
|
||
|
ulBadChecksum: Cardinal; // number of times a non-correctable ECC/checksum error was found
|
||
|
logtimeBadChecksum: JET_LOGTIME; // the date of the last time that a non-correctable ECC/checksum error was found
|
||
|
ulBadChecksumOld: Cardinal; // number of times a non-correctable ECC/checksum error was found before last repair
|
||
|
end;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_DBINFOMISC3 = record
|
||
|
ulVersion: Cardinal; // version of DAE the db created (see ulDAEVersion)
|
||
|
ulUpdate: Cardinal; // used to track incremental database format updates that are backward-compatible (see ulDAEUpdate)
|
||
|
signDb: JET_SIGNATURE; // (28 bytes) signature of the db (incl. creation time).
|
||
|
dbstate: Cardinal; // consistent/inconsistent state
|
||
|
lgposConsistent: JET_LGPOS; // null if in inconsistent state
|
||
|
logtimeConsistent: JET_LOGTIME; // null if in inconsistent state
|
||
|
logtimeAttach: JET_LOGTIME; // Last attach time.
|
||
|
lgposAttach: JET_LGPOS;
|
||
|
logtimeDetach: JET_LOGTIME; // Last detach time.
|
||
|
lgposDetach: JET_LGPOS;
|
||
|
signLog: JET_SIGNATURE; // (28 bytes) log signature for this attachments
|
||
|
bkinfoFullPrev: JET_BKINFO; // Last successful full backup.
|
||
|
bkinfoIncPrev: JET_BKINFO; // Last successful Incremental backup. Reset when bkinfoFullPrev is set
|
||
|
bkinfoFullCur: JET_BKINFO; // current backup. Succeed if a corresponding pat file generated.
|
||
|
fShadowingDisabled: Cardinal;
|
||
|
fUpgradeDb: Cardinal;
|
||
|
|
||
|
// NT version information. This is needed to decide if an index need
|
||
|
// be recreated due to sort table changes.
|
||
|
dwMajorVersion: Cardinal; { OS version info }
|
||
|
dwMinorVersion: Cardinal;
|
||
|
dwBuildNumber: Cardinal;
|
||
|
lSPNumber: long;
|
||
|
cbPageSize: Cardinal; // database page size (0 = 4k pages)
|
||
|
|
||
|
// new fields added on top of the above JET_DBINFOMISC
|
||
|
genMinRequired: Cardinal; // the minimum log generation required for replaying the logs. Typically the checkpoint generation
|
||
|
genMaxRequired: Cardinal; // the maximum log generation required for replaying the logs.
|
||
|
logtimeGenMaxCreate: JET_LOGTIME; // creation time of the genMax log file
|
||
|
|
||
|
ulRepairCount: Cardinal; // number of times repair has been called on this database
|
||
|
logtimeRepair: JET_LOGTIME; // the date of the last time that repair was run
|
||
|
ulRepairCountOld: Cardinal; // number of times ErrREPAIRAttachForRepair has been called on this database before the last defrag
|
||
|
|
||
|
ulECCFixSuccess: Cardinal; // number of times a one bit error was fixed and resulted in a good page
|
||
|
logtimeECCFixSuccess: JET_LOGTIME; // the date of the last time that a one bit error was fixed and resulted in a good page
|
||
|
ulECCFixSuccessOld: Cardinal; // number of times a one bit error was fixed and resulted in a good page before last repair
|
||
|
|
||
|
ulECCFixFail: Cardinal; // number of times a one bit error was fixed and resulted in a bad page
|
||
|
logtimeECCFixFail: JET_LOGTIME; // the date of the last time that a one bit error was fixed and resulted in a bad page
|
||
|
ulECCFixFailOld: Cardinal; // number of times a one bit error was fixed and resulted in a bad page before last repair
|
||
|
|
||
|
ulBadChecksum: Cardinal; // number of times a non-correctable ECC/checksum error was found
|
||
|
logtimeBadChecksum: JET_LOGTIME; // the date of the last time that a non-correctable ECC/checksum error was found
|
||
|
ulBadChecksumOld: Cardinal; // number of times a non-correctable ECC/checksum error was found before last repair
|
||
|
|
||
|
// new fields added on top of the above JET_DBINFOMISC2
|
||
|
genCommitted: Cardinal; // the maximum log generation committed to the database. Typically the current log generation
|
||
|
end;
|
||
|
|
||
|
|
||
|
JET_DBINFOMISC4 = record
|
||
|
ulVersion: Cardinal; // version of DAE the db created (see ulDAEVersion)
|
||
|
ulUpdate: Cardinal; // used to track incremental database format updates that are backward-compatible (see ulDAEUpdate)
|
||
|
signDb: JET_SIGNATURE; // (28 bytes) signature of the db (incl. creation time).
|
||
|
dbstate: Cardinal; // consistent/inconsistent state
|
||
|
lgposConsistent: JET_LGPOS; // null if in inconsistent state
|
||
|
logtimeConsistent: JET_LOGTIME; // null if in inconsistent state
|
||
|
logtimeAttach: JET_LOGTIME; // Last attach time.
|
||
|
lgposAttach: JET_LGPOS;
|
||
|
logtimeDetach: JET_LOGTIME; // Last detach time.
|
||
|
lgposDetach: JET_LGPOS;
|
||
|
signLog: JET_SIGNATURE; // (28 bytes) log signature for this attachments
|
||
|
bkinfoFullPrev: JET_BKINFO; // Last successful full backup.
|
||
|
bkinfoIncPrev: JET_BKINFO; // Last successful Incremental backup. Reset when bkinfoFullPrev is set
|
||
|
bkinfoFullCur: JET_BKINFO; // current backup. Succeed if a corresponding pat file generated.
|
||
|
fShadowingDisabled: Cardinal;
|
||
|
fUpgradeDb: Cardinal;
|
||
|
|
||
|
// NT version information. This is needed to decide if an index need
|
||
|
// be recreated due to sort table changes.
|
||
|
dwMajorVersion: Cardinal; { OS version info }
|
||
|
dwMinorVersion: Cardinal;
|
||
|
dwBuildNumber: Cardinal;
|
||
|
lSPNumber: long;
|
||
|
cbPageSize: Cardinal; // database page size (0 = 4k pages)
|
||
|
|
||
|
// new fields added on top of the above JET_DBINFOMISC
|
||
|
genMinRequired: Cardinal; // the minimum log generation required for replaying the logs. Typically the checkpoint generation
|
||
|
genMaxRequired: Cardinal; // the maximum log generation required for replaying the logs.
|
||
|
logtimeGenMaxCreate: JET_LOGTIME; // creation time of the genMax log file
|
||
|
|
||
|
ulRepairCount: Cardinal; // number of times repair has been called on this database
|
||
|
logtimeRepair: JET_LOGTIME; // the date of the last time that repair was run
|
||
|
ulRepairCountOld: Cardinal; // number of times ErrREPAIRAttachForRepair has been called on this database before the last defrag
|
||
|
|
||
|
ulECCFixSuccess: Cardinal; // number of times a one bit error was fixed and resulted in a good page
|
||
|
logtimeECCFixSuccess: JET_LOGTIME; // the date of the last time that a one bit error was fixed and resulted in a good page
|
||
|
ulECCFixSuccessOld: Cardinal; // number of times a one bit error was fixed and resulted in a good page before last repair
|
||
|
|
||
|
ulECCFixFail: Cardinal; // number of times a one bit error was fixed and resulted in a bad page
|
||
|
logtimeECCFixFail: JET_LOGTIME; // the date of the last time that a one bit error was fixed and resulted in a bad page
|
||
|
ulECCFixFailOld: Cardinal; // number of times a one bit error was fixed and resulted in a bad page before last repair
|
||
|
|
||
|
ulBadChecksum: Cardinal; // number of times a non-correctable ECC/checksum error was found
|
||
|
logtimeBadChecksum: JET_LOGTIME; // the date of the last time that a non-correctable ECC/checksum error was found
|
||
|
ulBadChecksumOld: Cardinal; // number of times a non-correctable ECC/checksum error was found before last repair
|
||
|
|
||
|
// new fields added on top of the above JET_DBINFOMISC2
|
||
|
genCommitted: Cardinal; // the maximum log generation committed to the database. Typically the current log generation
|
||
|
|
||
|
// new fields added on top of the above JET_DBINFOMISC3
|
||
|
bkinfoCopyPrev: JET_BKINFO; // Last successful Copy backup
|
||
|
bkinfoDiffPrev: JET_BKINFO; // Last successful Differential backup, reset when bkinfoFullPrev is set
|
||
|
end;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
// JET performance counters accumulated by thread
|
||
|
//
|
||
|
JET_THREADSTATS = record
|
||
|
cbStruct: Cardinal; // size of this struct
|
||
|
cPageReferenced: Cardinal; // pages referenced
|
||
|
cPageRead : Cardinal; // pages read from disk
|
||
|
cPagePreread: Cardinal; // pages preread from disk
|
||
|
cPageDirtied: Cardinal; // clean pages modified
|
||
|
cPageRedirtied: Cardinal; // dirty pages modified
|
||
|
cLogRecord : Cardinal; // log records generated
|
||
|
cbLogRecord: Cardinal; // log record bytes generated
|
||
|
end;
|
||
|
|
||
|
JET_RSTINFO_A = record
|
||
|
cbStruct: Cardinal;
|
||
|
rgrstmap: PJET_RSTMAP_A;
|
||
|
crstmap: long;
|
||
|
lgposStop: JET_LGPOS;
|
||
|
logtimeStop: JET_LOGTIME;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
end;
|
||
|
PJET_RSTINFO_A = ^JET_RSTINFO_A;
|
||
|
|
||
|
JET_RSTINFO_W = record
|
||
|
cbStruct: Cardinal;
|
||
|
rgrstmap: PJET_RSTMAP_W;
|
||
|
crstmap: long;
|
||
|
lgposStop: JET_LGPOS;
|
||
|
logtimeStop: JET_LOGTIME;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
end;
|
||
|
PJET_RSTINFO_W = ^JET_RSTINFO_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_RSTINFO = JET_RSTINFO_W;
|
||
|
{$ELSE}
|
||
|
JET_RSTINFO = JET_RSTINFO_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
const
|
||
|
{**********************************************************************}
|
||
|
{**************************** JET CONSTANTS ***************************}
|
||
|
{**********************************************************************}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_instanceNil = JET_INSTANCE( not 0);
|
||
|
{$IFEND}
|
||
|
JET_sesidNil = JET_SESID( not 0);
|
||
|
JET_tableidNil = JET_TABLEID(not 0);
|
||
|
JET_bitNil = JET_GRBIT(0);
|
||
|
|
||
|
{ Max length of a object/column/index/property name }
|
||
|
|
||
|
{$IFNDEF JET_UNICODE}
|
||
|
JET_cbNameMost = 64;
|
||
|
{$ELSE}
|
||
|
JET_cbNameMost = 128;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{ Max length of a "name.name.name..." construct }
|
||
|
|
||
|
{$IFNDEF JET_UNICODE}
|
||
|
JET_cbFullNameMost = 255;
|
||
|
{$ELSE}
|
||
|
JET_cbFullNameMost = 510;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{ Max size of long-value (LongBinary or LongText) column chunk }
|
||
|
|
||
|
// const JET_cbColumnLVChunkMost ( JET_cbPage - 82 ) to the following:
|
||
|
// Get cbPage from GetSystemParameter.
|
||
|
// changed JET_cbColumnLVChunkMost reference to cbPage - JET_cbColumnLVPageOverhead
|
||
|
|
||
|
JET_cbColumnLVPageOverhead = 82; // ONLY for small (<=8kiB) page, otherwise, query JET_paramLVChunkSizeMost
|
||
|
|
||
|
|
||
|
{ Max size of long-value (LongBinary or LongText) column default value }
|
||
|
|
||
|
JET_cbLVDefaultValueMost = 255;
|
||
|
|
||
|
{ Max size of non-long-value column data }
|
||
|
|
||
|
JET_cbColumnMost = 255;
|
||
|
|
||
|
{ Max size of a sort/index key }
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_cbKeyMost8KBytePage = 2000;
|
||
|
JET_cbKeyMost4KBytePage = 1000;
|
||
|
JET_cbKeyMost2KBytePage = 500;
|
||
|
JET_cbKeyMostMin = 255;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_cbKeyMost32KBytePage = JET_cbKeyMost8KBytePage;
|
||
|
JET_cbKeyMost16KBytePage = JET_cbKeyMost8KBytePage;
|
||
|
JET_cbKeyMostMost = JET_cbKeyMost32KBytePage;
|
||
|
{$IFEND}
|
||
|
|
||
|
JET_cbKeyMost = 255; // defunct constant retained for backward compatibility
|
||
|
JET_cbLimitKeyMost = 256; // defunct constant retained for backward compatibility
|
||
|
JET_cbPrimaryKeyMost = 255; // defunct constant retained for backward compatibility
|
||
|
JET_cbSecondaryKeyMost = 255; // defunct constant retained for backward compatibility
|
||
|
|
||
|
|
||
|
{ Max size of a bookmark }
|
||
|
|
||
|
JET_cbBookmarkMost = 256;
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_cbBookmarkMostMost = JET_cbKeyMostMost;
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Max number of components in a sort/index key }
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_ccolKeyMost = 16;
|
||
|
{$ELSE}
|
||
|
JET_ccolKeyMost = 12;
|
||
|
{$IFEND}
|
||
|
|
||
|
// maximum number of columns
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_ccolMost = $0000fee0;
|
||
|
{$ELSE}
|
||
|
JET_ccolMost = $00007ffe;
|
||
|
{$IFEND}
|
||
|
JET_ccolFixedMost = $0000007f;
|
||
|
JET_ccolVarMost = $00000080;
|
||
|
JET_ccolTaggedMost = ( JET_ccolMost - $000000ff );
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_EventLoggingDisable = 0;
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_EventLoggingLevelMin = 1;
|
||
|
JET_EventLoggingLevelLow = 25;
|
||
|
JET_EventLoggingLevelMedium = 50;
|
||
|
JET_EventLoggingLevelHigh = 75;
|
||
|
{$IFEND}
|
||
|
JET_EventLoggingLevelMax = 100;
|
||
|
{$IFEND}
|
||
|
|
||
|
// system paramters
|
||
|
//
|
||
|
// NOTE: the default values of these parameters used to be documented here.
|
||
|
// this can no longer be done because we now support multiple sets of default
|
||
|
// values as set by JET_paramConfiguration
|
||
|
//
|
||
|
// location parameters
|
||
|
//
|
||
|
JET_paramSystemPath = 0; // path to check point file
|
||
|
JET_paramTempPath = 1; // path to the temporary database
|
||
|
JET_paramLogFilePath = 2; // path to the log file directory
|
||
|
JET_paramBaseName = 3; // base name for all DBMS object names
|
||
|
JET_paramEventSource = 4; // language independent process descriptor string
|
||
|
|
||
|
// performance parameters
|
||
|
//
|
||
|
JET_paramMaxSessions = 5; // maximum number of sessions
|
||
|
JET_paramMaxOpenTables = 6; // maximum number of open directories
|
||
|
// need 1 for each open table index,
|
||
|
// plus 1 for each open table with no indexes,
|
||
|
// plus 1 for each table with long column data,
|
||
|
// plus a few more.
|
||
|
// for 4.1, 1/3 for regular table, 2/3 for index
|
||
|
JET_paramPreferredMaxOpenTables = 7; // preferred maximum number of open directories
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_paramCachedClosedTables = 125; // number of closed tables to cache the meta-data for
|
||
|
{$IFEND}
|
||
|
JET_paramMaxCursors = 8; // maximum number of open cursors
|
||
|
JET_paramMaxVerPages = 9; // maximum version store size in version pages
|
||
|
JET_paramPreferredVerPages = 63; // preferred version store size in version pages
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramGlobalMinVerPages = 81; // minimum version store size for all instances in version pages
|
||
|
JET_paramVersionStoreTaskQueueMax = 105; // maximum number of tasks in the task queue before start dropping the tasks
|
||
|
{$IFEND}
|
||
|
JET_paramMaxTemporaryTables = 10; // maximum concurrent open temporary table/index creation
|
||
|
JET_paramLogFileSize = 11; // log file size in kBytes
|
||
|
JET_paramLogBuffers = 12; // log buffers in 512 byte units.
|
||
|
JET_paramWaitLogFlush = 13; // log flush wait time in milliseconds
|
||
|
JET_paramLogCheckpointPeriod = 14; // checkpoint period in sectors
|
||
|
JET_paramLogWaitingUserMax = 15; // maximum sessions waiting log flush
|
||
|
JET_paramCommitDefault = 16; // default grbit for JetCommitTransaction
|
||
|
JET_paramCircularLog = 17; // boolean flag for circular logging
|
||
|
JET_paramDbExtensionSize = 18; // database extension size in pages
|
||
|
JET_paramPageTempDBMin = 19; // minimum size temporary database in pages
|
||
|
JET_paramPageFragment = 20; // maximum disk extent considered fragment in pages
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_paramEnableFileCache = 126; // enable the use of the OS file cache for all managed files
|
||
|
JET_paramVerPageSize = 128; // the version store page size
|
||
|
JET_paramConfiguration = 129; // RESETs all parameters to their default for a given configuration
|
||
|
JET_paramEnableAdvanced = 130; // enables the modification of advanced settings
|
||
|
JET_paramMaxColtyp = 131; // maximum coltyp supported by this version of ESE
|
||
|
{$IFEND}
|
||
|
|
||
|
// cache performance parameters
|
||
|
//
|
||
|
JET_paramBatchIOBufferMax = 22; // maximum batch I/O buffers in pages
|
||
|
JET_paramCacheSize = 41; // current cache size in pages
|
||
|
JET_paramCacheSizeMin = 60; // minimum cache size in pages
|
||
|
JET_paramCacheSizeMax = 23; // maximum cache size in pages
|
||
|
JET_paramCheckpointDepthMax = 24; // maximum checkpoint depth in bytes
|
||
|
JET_paramLRUKCorrInterval = 25; // time (usec) under which page accesses are correlated
|
||
|
JET_paramLRUKHistoryMax = 26; // maximum LRUK history records
|
||
|
JET_paramLRUKPolicy = 27; // K-ness of LRUK page eviction algorithm (1...2)
|
||
|
JET_paramLRUKTimeout = 28; // time (sec) after which cached pages are always evictable
|
||
|
JET_paramLRUKTrxCorrInterval = 29; // Not Used: time (usec) under which page accesses by the same transaction are correlated
|
||
|
JET_paramOutstandingIOMax = 30; // maximum outstanding I/Os
|
||
|
JET_paramStartFlushThreshold = 31; // evictable pages at which to start a flush (proportional to CacheSizeMax)
|
||
|
JET_paramStopFlushThreshold = 32; // evictable pages at which to stop a flush (proportional to CacheSizeMax)
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_paramEnableViewCache = 127; // enable the use of memory mapped file I/O for database files
|
||
|
JET_paramCheckpointIOMax = 135; // maxiumum number of pending flush writes
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
// TableClass names
|
||
|
JET_paramTableClass1Name = 137; // name of tableclass1
|
||
|
JET_paramTableClass2Name = 138; // name of tableclass2
|
||
|
JET_paramTableClass3Name = 139; // name of tableclass3
|
||
|
JET_paramTableClass4Name = 140; // name of tableclass4
|
||
|
JET_paramTableClass5Name = 141; // name of tableclass5
|
||
|
JET_paramTableClass6Name = 142; // name of tableclass6
|
||
|
JET_paramTableClass7Name = 143; // name of tableclass7
|
||
|
JET_paramTableClass8Name = 144; // name of tableclass8
|
||
|
JET_paramTableClass9Name = 145; // name of tableclass9
|
||
|
JET_paramTableClass10Name = 146; // name of tableclass10
|
||
|
JET_paramTableClass11Name = 147; // name of tableclass11
|
||
|
JET_paramTableClass12Name = 148; // name of tableclass12
|
||
|
JET_paramTableClass13Name = 149; // name of tableclass13
|
||
|
JET_paramTableClass14Name = 150; // name of tableclass14
|
||
|
JET_paramTableClass15Name = 151; // name of tableclass15
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
// Values for JET_paramIOPriority
|
||
|
JET_IOPriorityNormal = 0; // default
|
||
|
JET_IOPriorityLow = 1;
|
||
|
JET_paramIOPriority = 152; // adjust IO priority per instance, anytime. Mainly for background recovery
|
||
|
// Doesn't affect pending IOs, just subsequent ones
|
||
|
{$IFEND}
|
||
|
|
||
|
// debug only parameters
|
||
|
//
|
||
|
JET_paramRecovery = 34; // enable recovery
|
||
|
JET_paramEnableOnlineDefrag = 35; // enable online defrag
|
||
|
|
||
|
// Application specific parameter
|
||
|
//
|
||
|
JET_paramCheckFormatWhenOpenFail = 44; // JetInit may return JET_errDatabaseXXXformat instead of database corrupt when it is set
|
||
|
JET_paramEnableTempTableVersioning = 46; // Enable versioning of temp tables
|
||
|
JET_paramIgnoreLogVersion = 47; // Do not check the log version
|
||
|
JET_paramDeleteOldLogs = 48; // Delete the log files if the version is old, after deleting may make database non-recoverable
|
||
|
JET_paramEventSourceKey = 49; // Event source registration key value
|
||
|
JET_paramNoInformationEvent = 50; // Disable logging information event
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramEventLoggingLevel = 51; // Set the type of information that goes to event log
|
||
|
JET_paramDeleteOutOfRangeLogs = 52; // Delete the log files that are not matching (generation wise) during soft recovery
|
||
|
JET_paramAccessDeniedRetryPeriod = 53; // Number of milliseconds to retry when about to fail with AccessDenied
|
||
|
{$IFEND}
|
||
|
|
||
|
// Index-checking parameters
|
||
|
//
|
||
|
// Different versions of windows normalize unicode text in different ways. That means indexes built under one version of Windows may
|
||
|
// not work on other versions. Windows Server 2003 Beta 3 introduced GetNLSVersion() which can be used to determine the version of unicode normalization
|
||
|
// that the OS currently provides. Indexes built in server 2003 are flagged with the version of unicode normalization that they were
|
||
|
// built with (older indexes have no version information). Most unicode normalization changes consist of adding new characters -- codepoints
|
||
|
// which were previously undefined are defined and normalize differently. Thus, if binary data is stored in a unicode column it will normalize
|
||
|
// differently as new codepoints are defined.
|
||
|
//
|
||
|
// As of Windows Server 2003 RC1 ESENT tracks unicode index entries that contain undefined codepoints. These can be used to fixup an index when the
|
||
|
// set of defined unicode characters changes.
|
||
|
//
|
||
|
// These parameters control what happens when ESENT attaches to a database that was last used under a different build of the OS (the OS version
|
||
|
// is stamped in the database header).
|
||
|
//
|
||
|
// If JET_paramEnableIndexChecking is TRUE JetAttachDatabase() will delete indexes if JET_bitDbDeleteCorruptIndexes or return an error if
|
||
|
// the grbit was not specified and there are indexes which need deletion. If it is set to FALSE then JetAttachDatabase() will succeed, even
|
||
|
// if there are potentially corrupt indexes.
|
||
|
//
|
||
|
// If JET_paramEnableIndexCleanup is set, the internal fixup table will be used to fixup index entries. This may not fixup all index corruptions
|
||
|
// but will be transparent to the application.
|
||
|
//
|
||
|
|
||
|
JET_paramEnableIndexChecking = 45; // Enable checking OS version for indexes
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_paramEnableIndexCleanup = 54; // Enable cleanup of out-of-date index entries
|
||
|
{$IFEND}
|
||
|
|
||
|
// 60 // JET_paramCacheSizeMin defined above
|
||
|
// 63 // JET_paramPreferredVerPages defined above
|
||
|
JET_paramDatabasePageSize = 64; // set database page size
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramDisableCallbacks = 65; // turn off callback resolution (for defrag/repair)
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_paramDisablePerfmon = 107; // disable perfmon support for this process
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_paramEnablePersistedCallbacks = 156; // allow the database engine to resolve and use callbacks persisted in a database
|
||
|
{$IFEND}
|
||
|
|
||
|
// Backup performance parameters
|
||
|
//
|
||
|
JET_paramBackupChunkSize = 66; // backup read size in pages
|
||
|
JET_paramBackupOutstandingReads = 67; // backup maximum reads outstanding
|
||
|
|
||
|
JET_paramSLVProviderEnable = 68; // Enable SLV Provider
|
||
|
// begin_PubEsent
|
||
|
JET_paramLogFileCreateAsynch = 69; // prepares next log file while logging to the current one to smooth response time
|
||
|
{$IFEND}
|
||
|
JET_paramErrorToString = 70; // turns a JET_err into a string (taken from the comment in jet.h)
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramZeroDatabaseDuringBackup = 71; // Overwrite deleted records/LVs during backup
|
||
|
{$IFEND}
|
||
|
JET_paramUnicodeIndexDefault = 72; // default LCMapString() lcid and flags to use for CreateIndex() and unique multi-values check
|
||
|
// (pass JET_UNICODEINDEX structure for lParam)
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramRuntimeCallback = 73; // pointer to runtime-only callback function
|
||
|
{$IFEND}
|
||
|
JET_paramCleanupMismatchedLogFiles = 77; // instead of erroring out after a successful recovery with JET_errLogFileSizeMismatchDatabasesConsistent, ESE will silently delete the old log files and checkpoint file and continue operations
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramRecordUpgradeDirtyLevel = 78; // how aggresively should pages with their record format converted be flushed (0-3)
|
||
|
// 81 // JET_paramGlobalMinVerPages defined above
|
||
|
JET_paramOSSnapshotTimeout = 82; // timeout for the freeze period in msec
|
||
|
{$IFEND}
|
||
|
|
||
|
JET_paramExceptionAction = 98; // what to do with exceptions generated within JET
|
||
|
JET_paramEventLogCache = 99; // number of bytes of eventlog records to cache if service is not available
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_paramCreatePathIfNotExist = 100; // create system/temp/log/log-failover paths if they do not exist
|
||
|
JET_paramPageHintCacheSize = 101; // maximum size of the fast page latch hint cache in bytes
|
||
|
JET_paramOneDatabasePerSession = 102; // allow just one open user database per session
|
||
|
JET_paramMaxInstances = 104; // maximum number of instances per process
|
||
|
|
||
|
JET_paramIndexTuplesLengthMin = 110; // for tuple indexes, minimum length of a tuple
|
||
|
JET_paramIndexTuplesLengthMax = 111; // for tuple indexes, maximum length of a tuple
|
||
|
JET_paramIndexTuplesToIndexMax = 112; // for tuple indexes, maximum number of characters in a given string to index
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_paramAlternateDatabaseRecoveryPath = 113; // recovery-only - search for dirty-shutdown databases in specified location only
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_paramIndexTupleIncrement = 132; // for tuple indexes, offset increment for each succesive tuple
|
||
|
JET_paramIndexTupleStart = 133; // for tuple indexes, offset to start tuple indexing
|
||
|
JET_paramKeyMost = 134; // read only maximum settable key length before key trunctation occurs
|
||
|
JET_paramLegacyFileNames = 136; // Legacy file name characteristics to preserve ( JET_bitESE98FileNames | JET_bitEightDotThreeSoftCompat )
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_paramWaypointLatency = 153; // The latency (in logs) behind the tip / highest committed log to defer database page flushes.
|
||
|
JET_paramDefragmentSequentialBTrees = 160; // Turn on/off automatic sequential B-tree defragmentation
|
||
|
JET_paramDefragmentSequentialBTreesDensityCheckFrequency = 161; // Determine how frequently B-tree density is checked
|
||
|
JET_paramIOThrottlingTimeQuanta = 162; // Max time (in MS) that the I/O throttling mechanism gives a task to run for it to be considered 'completed'.
|
||
|
JET_paramLVChunkSizeMost = 163; // Max LV chuck size supported wrt the chosen page size (R/O)
|
||
|
JET_paramMaxCoalesceReadSize = 164; // Max number of bytes that can be grouped for a coalesced read operation.
|
||
|
JET_paramMaxCoalesceWriteSize = 165; // Max number of bytes that can be grouped for a coalesced write operation.
|
||
|
JET_paramMaxCoalesceReadGapSize = 166; // Max number of bytes that can be gapped for a coalesced read IO operation.
|
||
|
JET_paramMaxCoalesceWriteGapSize = 167; // Max number of bytes that can be gapped for a coalesced write IO operation.
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
{ Flags for JET_paramLegacyFileNames }
|
||
|
|
||
|
JET_bitESE98FileNames = $00000001; // Preserve the .log and .chk extension for compatibility reasons (i.e. Exchange)
|
||
|
JET_bitEightDotThreeSoftCompat = $00000002; // Preserve the 8.3 naming syntax for as long as possible. (this should not be changed, w/o ensuring there are no log files)
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetInit2, JetInit3 }
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
// IGNORE_MISSING_ATTACH, ignoring hanging asserts for missing databases during recovery
|
||
|
JET_bitReplayIgnoreMissingDB = $00000004; // ignore missing databases
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_bitRecoveryWithoutUndo = $00000008; // perform recovery, but halt at the Undo phase
|
||
|
JET_bitTruncateLogsAfterRecovery = $00000010; // on successful soft recovery, truncate log files
|
||
|
JET_bitReplayMissingMapEntryDB = $00000020; { missing database map entry default to same location }
|
||
|
JET_bitLogStreamMustExist = $00000040; // transaction logs must exist in the logfile directory (ie. cannot auto-start a new log stream)
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitReplayIgnoreLostLogs = $00000080; // ignore logs lost from the end of the log stream
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_flagsSoftRecovery = JET_bitReplayIgnoreMissingDB
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
or JET_bitReplayMissingMapEntryDB
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= JET_VERSION_WIN7}
|
||
|
or JET_bitReplayIgnoreLostLogs
|
||
|
{$IFEND};
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetTerm2 }
|
||
|
|
||
|
JET_bitTermComplete = $00000001;
|
||
|
JET_bitTermAbrupt = $00000002;
|
||
|
JET_bitTermStopBackup = $00000004;
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitTermDirty = $00000008;
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetIdle }
|
||
|
|
||
|
JET_bitIdleFlushBuffers = $00000001;
|
||
|
JET_bitIdleCompact = $00000002;
|
||
|
JET_bitIdleStatus = $00000004;
|
||
|
|
||
|
{ Flags for JetEndSession }
|
||
|
|
||
|
|
||
|
{ Flags for JetAttach/OpenDatabase }
|
||
|
|
||
|
JET_bitDbReadOnly = $00000001;
|
||
|
JET_bitDbExclusive = $00000002; { multiple opens allowed }
|
||
|
JET_bitDbDeleteCorruptIndexes = $00000010; { delete indexes possibly corrupted by NT version upgrade }
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitDbDeleteUnicodeIndexes = $00000400; { delete all indexes with unicode columns }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitDbUpgrade = $00000200; { }
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetDetachDatabase2 }
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitForceDetach = $00000001;
|
||
|
JET_bitForceCloseAndDetach = ($00000002 or JET_bitForceDetach);
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetCreateDatabase }
|
||
|
|
||
|
JET_bitDbRecoveryOff = $00000008; { disable logging/recovery for this database }
|
||
|
JET_bitDbShadowingOff = $00000080; { disable catalog shadowing }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitDbOverwriteExisting = $00000200; { overwrite existing database with same name }
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetBackup, JetBeginExternalBackup, JetBeginExternalBackupInstance, JetBeginSurrogateBackup }
|
||
|
|
||
|
JET_bitBackupIncremental = $00000001;
|
||
|
JET_bitBackupAtomic = $00000004;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitBackupSnapshot = $00000010;
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetEndExternalBackupInstance2, JetEndSurrogateBackup }
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitBackupEndNormal = $0001;
|
||
|
JET_bitBackupEndAbort = $0002;
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_bitBackupTruncateDone = $0100;
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Database types }
|
||
|
|
||
|
JET_dbidNil = JET_DBID( $FFFFFFFF);
|
||
|
|
||
|
|
||
|
{ Flags for JetCreateTableColumnIndex }
|
||
|
JET_bitTableCreateFixedDDL = $00000001; { DDL is fixed }
|
||
|
JET_bitTableCreateTemplateTable = $00000002; { DDL is inheritable (implies FixedDDL) }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitTableCreateNoFixedVarColumnsInDerivedTables = $00000004;
|
||
|
// used in conjunction with JET_bitTableCreateTemplateTable
|
||
|
// to disallow fixed/var columns in derived tables (so that
|
||
|
// fixed/var columns may be added to the template in the future)
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{ Flags for JetAddColumn, JetGetColumnInfo, JetOpenTempTable }
|
||
|
|
||
|
JET_bitColumnFixed = $00000001;
|
||
|
JET_bitColumnTagged = $00000002;
|
||
|
JET_bitColumnNotNULL = $00000004;
|
||
|
JET_bitColumnVersion = $00000008;
|
||
|
JET_bitColumnAutoincrement = $00000010;
|
||
|
JET_bitColumnUpdatable = $00000020; { JetGetColumnInfo only }
|
||
|
JET_bitColumnTTKey = $00000040; { JetOpenTempTable only }
|
||
|
JET_bitColumnTTDescending = $00000080; { JetOpenTempTable only }
|
||
|
JET_bitColumnMultiValued = $00000400;
|
||
|
JET_bitColumnEscrowUpdate = $00000800; { escrow updated }
|
||
|
JET_bitColumnUnversioned = $00001000; { for add column only - add column unversioned }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitColumnMaybeNull = $00002000; { for retrieve column info of outer join where no match from the inner table }
|
||
|
JET_bitColumnFinalize = $00004000; { this is a finalizable column (issue callback if escrow value equals 0) }
|
||
|
JET_bitColumnUserDefinedDefault = $00008000; { default value from a user-provided callback }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitColumnDeleteOnZero = $00020000; { this is a finalizable column (delete record if escrow value equals 0) }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitColumnCompressed = $00080000; { data in the column can be compressed }
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
// flags for JetDeleteColumn
|
||
|
JET_bitDeleteColumnIgnoreTemplateColumns = $00000001; // for derived tables, don't bother looking in template columns
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{ Flags for JetSetCurrentIndex }
|
||
|
|
||
|
JET_bitMoveFirst = $00000000;
|
||
|
JET_bitNoMove = $00000002;
|
||
|
|
||
|
{ Flags for JetMakeKey }
|
||
|
|
||
|
JET_bitNewKey = $00000001;
|
||
|
JET_bitStrLimit = $00000002;
|
||
|
JET_bitSubStrLimit = $00000004;
|
||
|
JET_bitNormalizedKey = $00000008;
|
||
|
JET_bitKeyDataZeroLength = $00000010;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitFullColumnStartLimit = $00000100;
|
||
|
JET_bitFullColumnEndLimit = $00000200;
|
||
|
JET_bitPartialColumnStartLimit = $00000400;
|
||
|
JET_bitPartialColumnEndLimit = $00000800;
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetSetIndexRange }
|
||
|
|
||
|
JET_bitRangeInclusive = $00000001;
|
||
|
JET_bitRangeUpperLimit = $00000002;
|
||
|
JET_bitRangeInstantDuration = $00000004;
|
||
|
JET_bitRangeRemove = $00000008;
|
||
|
|
||
|
{ Flags for JetGetLock }
|
||
|
|
||
|
JET_bitReadLock = $00000001;
|
||
|
JET_bitWriteLock = $00000002;
|
||
|
|
||
|
{ Constants for JetMove }
|
||
|
|
||
|
JET_MoveFirst = ($80000000);
|
||
|
JET_MovePrevious = (-1);
|
||
|
JET_MoveNext = (+1);
|
||
|
JET_MoveLast = ($7fffffff);
|
||
|
|
||
|
{ Flags for JetMove }
|
||
|
|
||
|
JET_bitMoveKeyNE = $00000001;
|
||
|
|
||
|
{ Flags for JetSeek }
|
||
|
|
||
|
JET_bitSeekEQ = $00000001;
|
||
|
JET_bitSeekLT = $00000002;
|
||
|
JET_bitSeekLE = $00000004;
|
||
|
JET_bitSeekGE = $00000008;
|
||
|
JET_bitSeekGT = $00000010;
|
||
|
JET_bitSetIndexRange = $00000020;
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitCheckUniqueness = $00000040; // to be used with JET_bitSeekEQ only, returns JET_wrnUniqueKey if seek lands on a key which has no dupes
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
// Flags for JetGotoSecondaryIndexBookmark
|
||
|
JET_bitBookmarkPermitVirtualCurrency = $00000001; // place cursor on relative position in index if specified bookmark no longer exists
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JET_CONDITIONALCOLUMN }
|
||
|
JET_bitIndexColumnMustBeNull = $00000001;
|
||
|
JET_bitIndexColumnMustBeNonNull = $00000002;
|
||
|
|
||
|
{ Flags for JET_INDEXRANGE }
|
||
|
JET_bitRecordInIndex = $00000001;
|
||
|
JET_bitRecordNotInIndex = $00000002;
|
||
|
|
||
|
{ Flags for JetCreateIndex }
|
||
|
|
||
|
JET_bitIndexUnique = $00000001;
|
||
|
JET_bitIndexPrimary = $00000002;
|
||
|
JET_bitIndexDisallowNull = $00000004;
|
||
|
JET_bitIndexIgnoreNull = $00000008;
|
||
|
JET_bitIndexIgnoreAnyNull = $00000020;
|
||
|
JET_bitIndexIgnoreFirstNull = $00000040;
|
||
|
JET_bitIndexLazyFlush = $00000080;
|
||
|
JET_bitIndexEmpty = $00000100; // don't attempt to build index, because all entries would evaluate to NULL (MUST also specify JET_bitIgnoreAnyNull)
|
||
|
JET_bitIndexUnversioned = $00000200;
|
||
|
JET_bitIndexSortNullsHigh = $00000400; // NULL sorts after data for all columns in the index
|
||
|
JET_bitIndexUnicode = $00000800; // LCID field of JET_INDEXCREATE actually points to a JET_UNICODEINDEX struct to allow user-defined LCMapString() flags
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitIndexTuples = $00001000; // index on substring tuples (text columns only)
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitIndexTupleLimits = $00002000; // cbVarSegMac field of JET_INDEXCREATE actually points to a JET_TUPLELIMITS struct to allow custom tuple index limits (implies JET_bitIndexTuples)
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_bitIndexCrossProduct = $00004000; // index over multiple multi-valued columns has full cross product
|
||
|
JET_bitIndexKeyMost = $00008000; // custom index key size set instead of default of 255 bytes
|
||
|
JET_bitIndexDisallowTruncation = $00010000; // fail update rather than truncate index keys
|
||
|
JET_bitIndexNestedTable = $00020000; // index over multiple multi-valued columns but only with values of same itagSequence
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for index key definition }
|
||
|
|
||
|
JET_bitKeyAscending = $00000000;
|
||
|
JET_bitKeyDescending = $00000001;
|
||
|
|
||
|
{ Flags for JetOpenTable }
|
||
|
|
||
|
JET_bitTableDenyWrite = $00000001;
|
||
|
JET_bitTableDenyRead = $00000002;
|
||
|
JET_bitTableReadOnly = $00000004;
|
||
|
JET_bitTableUpdatable = $00000008;
|
||
|
JET_bitTablePermitDDL = $00000010; { override table flagged as FixedDDL (must be used with DenyRead) }
|
||
|
JET_bitTableNoCache = $00000020; { don't cache the pages for this table }
|
||
|
JET_bitTablePreread = $00000040; { assume the table is probably not in the buffer cache }
|
||
|
JET_bitTableOpportuneRead = $00000080; { attempt to opportunely read physically adjacent leaf pages using larger physical IOs }
|
||
|
JET_bitTableSequential = $00008000; { assume the table will be scanned sequentially }
|
||
|
|
||
|
|
||
|
JET_bitTableClassMask = $000F0000; { table stats class mask }
|
||
|
JET_bitTableClassNone = $00000000; { table belongs to no stats class (default) }
|
||
|
JET_bitTableClass1 = $00010000; { table belongs to stats class 1 }
|
||
|
JET_bitTableClass2 = $00020000; { table belongs to stats class 2 }
|
||
|
JET_bitTableClass3 = $00030000; { table belongs to stats class 3 }
|
||
|
JET_bitTableClass4 = $00040000; { table belongs to stats class 4 }
|
||
|
JET_bitTableClass5 = $00050000; { table belongs to stats class 5 }
|
||
|
JET_bitTableClass6 = $00060000; { table belongs to stats class 6 }
|
||
|
JET_bitTableClass7 = $00070000; { table belongs to stats class 7 }
|
||
|
JET_bitTableClass8 = $00080000; { table belongs to stats class 8 }
|
||
|
JET_bitTableClass9 = $00090000; { table belongs to stats class 9 }
|
||
|
JET_bitTableClass10 = $000A0000; { table belongs to stats class 10 }
|
||
|
JET_bitTableClass11 = $000B0000; { table belongs to stats class 11 }
|
||
|
JET_bitTableClass12 = $000C0000; { table belongs to stats class 12 }
|
||
|
JET_bitTableClass13 = $000D0000; { table belongs to stats class 13 }
|
||
|
JET_bitTableClass14 = $000E0000; { table belongs to stats class 14 }
|
||
|
JET_bitTableClass15 = $000F0000; { table belongs to stats class 15 }
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitLSReset = $00000001; { reset LS value }
|
||
|
JET_bitLSCursor = $00000002; { set/retrieve LS of table cursor }
|
||
|
JET_bitLSTable = $00000004; { set/retrieve LS of table }
|
||
|
|
||
|
JET_LSNil = JET_LS( not 0);
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
{ Flags for JetSetTableSequential }
|
||
|
|
||
|
JET_bitPrereadForward = $00000001; { Hint that the sequential traversal will be in the forward direction }
|
||
|
JET_bitPrereadBackward = $00000002; { Hint that the sequential traversal will be in the backward direction }
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetOpenTempTable }
|
||
|
|
||
|
JET_bitTTIndexed = $00000001; { Allow seek }
|
||
|
JET_bitTTUnique = $00000002; { Remove duplicates }
|
||
|
JET_bitTTUpdatable = $00000004; { Allow updates }
|
||
|
JET_bitTTScrollable = $00000008; { Allow backwards scrolling }
|
||
|
JET_bitTTSortNullsHigh = $00000010; { NULL sorts after data for all columns in the index }
|
||
|
JET_bitTTForceMaterialization = $00000020; { Forces temp. table to be materialized into a btree (allows for duplicate detection) }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitTTErrorOnDuplicateInsertion = JET_bitTTForceMaterialization; { Error always returned when duplicate is inserted (instead of dupe being silently removed) }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitTTForwardOnly = $00000040; { Prevents temp. table from being materialized into a btree (and enables duplicate keys) }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitTTIntrinsicLVsOnly = $00000080; // permit only intrinsic LV's (so materialisation is not required simply because a TT has an LV column)
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetSetColumn }
|
||
|
|
||
|
JET_bitSetAppendLV = $00000001;
|
||
|
JET_bitSetOverwriteLV = $00000004; { overwrite JET_coltypLong* byte range }
|
||
|
JET_bitSetSizeLV = $00000008; { set JET_coltypLong* size }
|
||
|
JET_bitSetZeroLength = $00000020;
|
||
|
JET_bitSetSeparateLV = $00000040; { force LV separation }
|
||
|
JET_bitSetUniqueMultiValues = $00000080; { prevent duplicate multi-values }
|
||
|
JET_bitSetUniqueNormalizedMultiValues = $00000100; { prevent duplicate multi-values, normalizing all data before performing comparisons }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitSetRevertToDefaultValue = $00000200; { if setting last tagged instance to NULL, revert to default value instead if one exists }
|
||
|
JET_bitSetIntrinsicLV = $00000400; { store whole LV in record without bursting or return an error }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitSetCompressed = $00020000; { attempt compression when storing the data }
|
||
|
JET_bitSetUncompressed = $00010000; { don't attempt compression when storing the data }
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
{ Space Hint Flags / JET_SPACEHINTS }
|
||
|
|
||
|
// Generic
|
||
|
JET_bitSpaceHintsUtilizeParentSpace = $00000001; // This changes the internal allocation policy to get space heirarchically from a B-Tree's immediate parent.
|
||
|
// Create
|
||
|
JET_bitCreateHintAppendSequential = $00000002; // This bit will enable Append split behavior to grow according to the growth dynamics of the table (set by cbMinExtent, ulGrowth, cbMaxExtent).
|
||
|
JET_bitCreateHintHotpointSequential = $00000004; // This bit will enable Hotpoint split behavior to grow according to the growth dynamics of the table (set by cbMinExtent, ulGrowth, cbMaxExtent).
|
||
|
// Retrieve
|
||
|
JET_bitRetrieveHintReserve1 = $00000008; // Reserved and ignored
|
||
|
JET_bitRetrieveHintTableScanForward = $00000010; // By setting this the client indicates that forward sequential scan is the predominant usage pattern of this table.
|
||
|
JET_bitRetrieveHintTableScanBackward = $00000020; // By setting this the client indicates that backwards sequential scan is the predominant usage pattern of this table.
|
||
|
JET_bitRetrieveHintReserve2 = $00000040; // Reserved and ignored
|
||
|
JET_bitRetrieveHintReserve3 = $00000080; // Reserved and ignored
|
||
|
// Update
|
||
|
//const JET_bitUpdateReserved = $00000000; // TBD.
|
||
|
// Delete / .grbitDelete
|
||
|
JET_bitDeleteHintTableSequential = $00000100; // This means that the application expects this table to be cleaned up in-order sequentially (from lowest key to highest key)
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
type
|
||
|
{ Set column parameter structure for JetSetColumns }
|
||
|
JET_SETCOLUMN = record
|
||
|
columnid: JET_COLUMNID;
|
||
|
pvData: Pointer;
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
ibLongValue : Cardinal;
|
||
|
itagSequence: Cardinal;
|
||
|
err: JET_ERR;
|
||
|
end;
|
||
|
PJET_SETCOLUMN = ^JET_SETCOLUMN;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_SETSYSPARAM_A = record
|
||
|
paramid: Cardinal;
|
||
|
lParam: Pointer;
|
||
|
sz: PAnsiChar;
|
||
|
err: JET_ERR;
|
||
|
end;
|
||
|
PJET_SETSYSPARAM_A = ^JET_SETSYSPARAM_A;
|
||
|
|
||
|
JET_SETSYSPARAM_W = record
|
||
|
paramid: Cardinal;
|
||
|
lParam: Pointer;
|
||
|
sz: PWideChar;
|
||
|
err: JET_ERR;
|
||
|
end;
|
||
|
PJET_SETSYSPARAM_W = ^JET_SETSYSPARAM_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_SETSYSPARAM = JET_SETSYSPARAM_W;
|
||
|
{$ELSE}
|
||
|
JET_SETSYSPARAM = JET_SETSYSPARAM_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
const
|
||
|
{ Options for JetPrepareUpdate }
|
||
|
JET_prepInsert = 0;
|
||
|
JET_prepReplace = 2;
|
||
|
JET_prepCancel = 3;
|
||
|
JET_prepReplaceNoLock = 4;
|
||
|
JET_prepInsertCopy = 5;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_prepInsertCopyDeleteOriginal = 7; // used for updating a record in the primary key; avoids the delete/insert process }
|
||
|
{$IFEND}
|
||
|
|
||
|
// Flags for JetUpdate
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitUpdateCheckESE97Compatibility = $00000001; // check whether record fits if represented in ESE97 database format
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetEscrowUpdate }
|
||
|
JET_bitEscrowNoRollback = $0001;
|
||
|
|
||
|
{ Flags for JetRetrieveColumn }
|
||
|
|
||
|
JET_bitRetrieveCopy = $00000001;
|
||
|
JET_bitRetrieveFromIndex = $00000002;
|
||
|
JET_bitRetrieveFromPrimaryBookmark = $00000004;
|
||
|
JET_bitRetrieveTag = $00000008;
|
||
|
JET_bitRetrieveNull = $00000010; { for columnid 0 only }
|
||
|
JET_bitRetrieveIgnoreDefault = $00000020; { for columnid 0 only }
|
||
|
JET_bitRetrieveLongId = $00000040;
|
||
|
JET_bitRetrieveLongValueRefCount = $00000080; { for testing use only }
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_bitRetrieveTuple = $00000800; { retrieve tuple fragment from index }
|
||
|
{$IFEND}
|
||
|
|
||
|
type
|
||
|
{ Retrieve column parameter structure for JetRetrieveColumns }
|
||
|
JET_RETRIEVECOLUMN = record
|
||
|
columnid: JET_COLUMNID;
|
||
|
pvData: Pointer;
|
||
|
cbData: Cardinal;
|
||
|
cbActual: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
ibLongValue : Cardinal;
|
||
|
itagSequence: Cardinal;
|
||
|
columnidNextTagged: JET_COLUMNID;
|
||
|
err: JET_ERR;
|
||
|
end;
|
||
|
PJET_RETRIEVECOLUMN = ^JET_RETRIEVECOLUMN;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
const
|
||
|
{ Flags for JetEnumerateColumns }
|
||
|
|
||
|
JET_bitEnumerateCopy = JET_bitRetrieveCopy;
|
||
|
JET_bitEnumerateIgnoreDefault = JET_bitRetrieveIgnoreDefault;
|
||
|
JET_bitEnumeratePresenceOnly = $00020000;
|
||
|
JET_bitEnumerateTaggedOnly = $00040000;
|
||
|
JET_bitEnumerateCompressOutput = $00080000;
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
// Available on Server 2003 SP1
|
||
|
JET_bitEnumerateIgnoreUserDefinedDefault = $00100000;
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitEnumerateInRecordOnly = $00200000;
|
||
|
{$IFEND}
|
||
|
|
||
|
type
|
||
|
{ Parameter structures for JetEnumerateColumns }
|
||
|
JET_ENUMCOLUMNID = record
|
||
|
columnid: JET_COLUMNID;
|
||
|
ctagSequence: Cardinal;
|
||
|
rgtagSequence: PCardinal;
|
||
|
end;
|
||
|
PJET_ENUMCOLUMNID = ^JET_ENUMCOLUMNID;
|
||
|
|
||
|
JET_ENUMCOLUMNVALUE = record
|
||
|
itagSequence: Cardinal;
|
||
|
err: JET_ERR;
|
||
|
cbData: Cardinal;
|
||
|
pvData: Pointer;
|
||
|
end;
|
||
|
PJET_ENUMCOLUMNVALUE = ^JET_ENUMCOLUMNVALUE;
|
||
|
|
||
|
JET_ENUMCOLUMN = record
|
||
|
columnid: JET_COLUMNID;
|
||
|
err: JET_ERR;
|
||
|
case Byte of
|
||
|
0: (enum: record { err != JET_wrnColumnSingleValue }
|
||
|
cEnumColumnValue: Cardinal;
|
||
|
rgEnumColumnValue: PJET_ENUMCOLUMNVALUE;
|
||
|
end);
|
||
|
1: (data: record { err == JET_wrnColumnSingleValue }
|
||
|
cbData: Cardinal;
|
||
|
pvData: Pointer;
|
||
|
end);
|
||
|
end;
|
||
|
PJET_ENUMCOLUMN = ^JET_ENUMCOLUMN;
|
||
|
|
||
|
{ Realloc callback for JetEnumerateColumns }
|
||
|
JET_PFNREALLOC = function(pvContext: Pointer;
|
||
|
pv: Pointer;
|
||
|
cb: Cardinal
|
||
|
): Pointer; stdcall;
|
||
|
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
const
|
||
|
{ Flags for JetGetRecordSize }
|
||
|
|
||
|
JET_bitRecordSizeInCopyBuffer = $00000001; // use record in copy buffer
|
||
|
JET_bitRecordSizeRunningTotal = $00000002; // increment totals in output buffer instead of setting them
|
||
|
JET_bitRecordSizeLocal = $00000004; // ignore Long Values (and other data otherwise not in the same page as the record)
|
||
|
|
||
|
type
|
||
|
{ parameter structures for JetGetRecordSize }
|
||
|
JET_RECSIZE = record
|
||
|
cbData: UInt64; // user data in record
|
||
|
cbLongValueData: UInt64; // user data associated with the record but stored in the long-value tree (NOTE: does NOT count intrinsic long-values)
|
||
|
cbOverhead: UInt64; // record overhead
|
||
|
cbLongValueOverhead: UInt64; // overhead of long-value data (NOTE: does not count intrinsic long-values)
|
||
|
cNonTaggedColumns: UInt64; // total number of fixed/variable columns
|
||
|
cTaggedColumns: UInt64; // total number of tagged columns
|
||
|
cLongValues: UInt64; // total number of values stored in the long-value tree for this record (NOTE: does NOT count intrinsic long-values)
|
||
|
cMultiValues: UInt64; // total number of values beyond the first for each column in the record
|
||
|
end;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_RECSIZE2 = record
|
||
|
cbData: UInt64; // user data in record
|
||
|
cbLongValueData: UInt64; // user data associated with the record but stored in the long-value tree (NOTE: does NOT count intrinsic long-values)
|
||
|
cbOverhead: UInt64; // record overhead
|
||
|
cbLongValueOverhead: UInt64; // overhead of long-value data (NOTE: does not count intrinsic long-values)
|
||
|
cNonTaggedColumns: UInt64; // total number of fixed/variable columns
|
||
|
cTaggedColumns: UInt64; // total number of tagged columns
|
||
|
cLongValues: UInt64; // total number of values stored in the long-value tree for this record (NOTE: does NOT count intrinsic long-values)
|
||
|
cMultiValues: UInt64; // total number of values beyond the first for each column in the record
|
||
|
cCompressedColumns: UInt64; // total number of columns which are compressed
|
||
|
cbDataCompressed: UInt64; // compressed size of user data in record (same as cbData if no intrinsic long-values are compressed)
|
||
|
cbLongValueDataCompressed: UInt64; // compressed size of user data in the long-value tree (same as cbLongValue data if no separated long values are compressed)
|
||
|
end;
|
||
|
{$IFEND}
|
||
|
|
||
|
const
|
||
|
{ Flags for JetBeginTransaction2 }
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_bitTransactionReadOnly = $00000001; { transaction will not modify the database }
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetCommitTransaction }
|
||
|
|
||
|
JET_bitCommitLazyFlush = $00000001; { lazy flush log buffers. }
|
||
|
JET_bitWaitLastLevel0Commit = $00000002; { wait for last level 0 commit record flushed }
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
JET_bitWaitAllLevel0Commit = $00000008; { wait for all level 0 commits to be flushed }
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitForceNewLog = $00000010;
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetRollback }
|
||
|
|
||
|
JET_bitRollbackAll = $00000001;
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
{ Flags for JetOSSnapshot APIs }
|
||
|
|
||
|
{ Flags for JetOSSnapshotPrepare }
|
||
|
JET_bitIncrementalSnapshot = $00000001; { bit 0: full (0) or incremental (1) snapshot }
|
||
|
JET_bitCopySnapshot = $00000002; { bit 1: normal (0) or copy (1) snapshot }
|
||
|
JET_bitContinueAfterThaw = $00000004; { bit 2: end on thaw (0) or wait for [truncate +] end snapshot }
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_bitExplicitPrepare = $00000008; { bit 3: all instaces prepared by default (0) or no instance prepared by default (1) }
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Flags for JetOSSnapshotTruncateLog & JetOSSnapshotTruncateLogInstance }
|
||
|
JET_bitAllDatabasesSnapshot = $00000001; { bit 0: there are detached dbs in the instance (i.e. can't truncate logs) }
|
||
|
|
||
|
{ Flags for JetOSSnapshotEnd }
|
||
|
JET_bitAbortSnapshot = $00000001; { snapshot process failed }
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{ Info parameter for JetGetDatabaseInfo and JetGetDatabaseFileInfo }
|
||
|
|
||
|
JET_DbInfoFilename = 0;
|
||
|
JET_DbInfoConnect = 1;
|
||
|
JET_DbInfoCountry = 2;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_DbInfoLCID = 3;
|
||
|
{$IFEND}
|
||
|
JET_DbInfoLangid = 3; // OBSOLETE: use JET_DbInfoLCID instead
|
||
|
JET_DbInfoCp = 4;
|
||
|
JET_DbInfoCollate = 5;
|
||
|
JET_DbInfoOptions = 6;
|
||
|
JET_DbInfoTransactions = 7;
|
||
|
JET_DbInfoVersion = 8;
|
||
|
JET_DbInfoIsam = 9;
|
||
|
JET_DbInfoFilesize = 10;
|
||
|
JET_DbInfoSpaceOwned = 11;
|
||
|
JET_DbInfoSpaceAvailable = 12;
|
||
|
JET_DbInfoUpgrade_ = 13; // renamed from JET_DbInfoUpgrade
|
||
|
JET_DbInfoMisc_ = 14; // renamed from JET_DbInfoMisc
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_DbInfoDBInUse = 15;
|
||
|
JET_DbInfoPageSize = 17;
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_DbInfoFileType = 19;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Dbstates from JetGetDatabaseFileInfo }
|
||
|
|
||
|
JET_dbstateJustCreated = 1;
|
||
|
JET_dbstateDirtyShutdown = 2;
|
||
|
JET_dbstateCleanShutdown = 3;
|
||
|
JET_dbstateBeingConverted = 4;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_dbstateForceDetach = 5;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
// supported file types (returned from JetGetDatabaseFileInfo with JET_DbInfoFileType)
|
||
|
|
||
|
JET_filetypeUnknown = 0;
|
||
|
JET_filetypeDatabase = 1;
|
||
|
JET_filetypeLog = 3;
|
||
|
JET_filetypeCheckpoint = 4;
|
||
|
JET_filetypeTempDatabase = 5;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Column data types }
|
||
|
|
||
|
JET_coltypNil = 0;
|
||
|
JET_coltypBit = 1; { True, False, or NULL }
|
||
|
JET_coltypUnsignedByte = 2; { 1-byte integer, unsigned }
|
||
|
JET_coltypShort = 3; { 2-byte integer, signed }
|
||
|
JET_coltypLong = 4; { 4-byte integer, signed }
|
||
|
JET_coltypCurrency = 5; { 8 byte integer, signed }
|
||
|
JET_coltypIEEESingle = 6; { 4-byte IEEE single precision }
|
||
|
JET_coltypIEEEDouble = 7; { 8-byte IEEE double precision }
|
||
|
JET_coltypDateTime = 8; { Integral date, fractional time }
|
||
|
JET_coltypBinary = 9; { Binary data, < 255 bytes }
|
||
|
JET_coltypText = 10; { ANSI text, case insensitive, < 255 bytes }
|
||
|
JET_coltypLongBinary = 11; { Binary data, long value }
|
||
|
JET_coltypLongText = 12; { ANSI text, long value }
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_coltypSLV = 13; { SLV's }
|
||
|
JET_coltypUnsignedLong = 14; { 4-byte unsigned integer }
|
||
|
JET_coltypLongLong = 15; { 8-byte signed integer }
|
||
|
JET_coltypGUID = 16; { 16-byte globally unique identifier }
|
||
|
JET_coltypUnsignedShort = 17; { 2-byte unsigned integer }
|
||
|
JET_coltypMax = 18; { the number of column types }
|
||
|
{ used for validity tests and }
|
||
|
{ array declarations. }
|
||
|
{$ELSEIF JET_VERSION >= $0501}
|
||
|
JET_coltypSLV = 13; { SLV's }
|
||
|
JET_coltypMax = 14; { the number of column types }
|
||
|
{ used for validity tests and }
|
||
|
{ array declarations. }
|
||
|
{$ELSE}
|
||
|
JET_coltypMax = 13; { the number of column types }
|
||
|
{ used for validity tests and }
|
||
|
{ array declarations. }
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Info levels for JetGetObjectInfo }
|
||
|
|
||
|
JET_ObjInfo = Cardinal(0);
|
||
|
JET_ObjInfoListNoStats = Cardinal(1);
|
||
|
JET_ObjInfoList = Cardinal(2);
|
||
|
JET_ObjInfoSysTabCursor = Cardinal(3);
|
||
|
JET_ObjInfoListACM = Cardinal(4); { Blocked by JetGetObjectInfo }
|
||
|
JET_ObjInfoNoStats = Cardinal(5);
|
||
|
JET_ObjInfoSysTabReadOnly = Cardinal(6);
|
||
|
JET_ObjInfoRulesLoaded = Cardinal(7);
|
||
|
JET_ObjInfoMax = Cardinal(8);
|
||
|
|
||
|
{ Info levels for JetGetTableInfo }
|
||
|
|
||
|
JET_TblInfo = Cardinal(0);
|
||
|
JET_TblInfoName = Cardinal(1);
|
||
|
JET_TblInfoDbid = Cardinal(2);
|
||
|
JET_TblInfoMostMany = Cardinal(3);
|
||
|
JET_TblInfoRvt = Cardinal(4);
|
||
|
JET_TblInfoOLC = Cardinal(5);
|
||
|
JET_TblInfoResetOLC = Cardinal(6);
|
||
|
JET_TblInfoSpaceUsage = Cardinal(7);
|
||
|
JET_TblInfoDumpTable = Cardinal(8);
|
||
|
JET_TblInfoSpaceAlloc = Cardinal(9);
|
||
|
JET_TblInfoSpaceOwned = Cardinal(10); // OwnExt
|
||
|
JET_TblInfoSpaceAvailable = Cardinal(11); // AvailExt
|
||
|
JET_TblInfoTemplateTableName = Cardinal(12);
|
||
|
|
||
|
{ Info levels for JetGetIndexInfo and JetGetTableIndexInfo }
|
||
|
|
||
|
JET_IdxInfo = Cardinal(0);
|
||
|
JET_IdxInfoList = Cardinal(1);
|
||
|
JET_IdxInfoSysTabCursor = Cardinal(2);
|
||
|
JET_IdxInfoOLC = Cardinal(3);
|
||
|
JET_IdxInfoResetOLC = Cardinal(4);
|
||
|
JET_IdxInfoSpaceAlloc = Cardinal(5);
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_IdxInfoLCID = Cardinal(6);
|
||
|
{$IFEND}
|
||
|
JET_IdxInfoLangid = Cardinal(6); // OBSOLETE: use JET_IdxInfoLCID instead
|
||
|
JET_IdxInfoCount = Cardinal(7);
|
||
|
JET_IdxInfoVarSegMac = Cardinal(8);
|
||
|
JET_IdxInfoIndexId = Cardinal(9);
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_IdxInfoKeyMost = Cardinal(10);
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
JET_IdxInfoCreateIndex = Cardinal(11); // return a JET_INDEXCREATE structure suitable for use by JetCreateIndex2()
|
||
|
JET_IdxInfoCreateIndex2 = Cardinal(12); // return a JET_INDEXCREATE2 structure suitable for use by JetCreateIndex2()
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Info levels for JetGetColumnInfo and JetGetTableColumnInfo }
|
||
|
|
||
|
JET_ColInfo = Cardinal(0);
|
||
|
JET_ColInfoList = Cardinal(1);
|
||
|
JET_ColInfoSysTabCursor = Cardinal(3);
|
||
|
JET_ColInfoBase = Cardinal(4);
|
||
|
JET_ColInfoListCompact = Cardinal(5); // INTERNAL USE ONLY
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_ColInfoByColid = Cardinal(6);
|
||
|
JET_ColInfoListSortColumnid = Cardinal(7); // OBSOLETE: use grbit instead
|
||
|
{$IFEND}
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
JET_ColInfoBaseByColid = Cardinal(8);
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
// Grbits for JET_GetColumnInfo and JetGetTableColumnInfo (OR together with the info level)
|
||
|
JET_ColInfoGrbitNonDerivedColumnsOnly = $80000000; // for lists, only return non-derived columns (if the table is derived from a template)
|
||
|
JET_ColInfoGrbitMinimalInfo = $40000000; // for lists, only return the column name and columnid of each column
|
||
|
JET_ColInfoGrbitSortByColumnid = $20000000; // for lists, sort returned column list by columnid (default is to sort list by column name)
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
{ Info levels for JetGetInstanceMiscInfo, which is very different than JetGetInstanceInfo, as that retrieves a list of all instances }
|
||
|
|
||
|
JET_InstanceMiscInfoLogSignature = Cardinal(0);
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{ Engine Object Types }
|
||
|
|
||
|
JET_objtypNil = 0;
|
||
|
JET_objtypTable = 1;
|
||
|
|
||
|
{ Compact Options }
|
||
|
|
||
|
JET_bitCompactStats = $00000020; { Dump off-line compaction stats (only when progress meter also specified) }
|
||
|
JET_bitCompactRepair = $00000040; { Don't preread and ignore duplicate keys }
|
||
|
|
||
|
{ Status Notification Processes }
|
||
|
|
||
|
JET_snpRepair = 2;
|
||
|
JET_snpCompact = 4;
|
||
|
JET_snpRestore = 8;
|
||
|
JET_snpBackup = 9;
|
||
|
JET_snpUpgrade = 10;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
JET_snpScrub = 11;
|
||
|
JET_snpUpgradeRecordFormat = 12;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{ Status Notification Types }
|
||
|
|
||
|
JET_sntBegin = 5; { callback for beginning of operation }
|
||
|
JET_sntRequirements = 7; { callback for returning operation requirements }
|
||
|
JET_sntProgress = 0; { callback for progress }
|
||
|
JET_sntComplete = 6; { callback for completion of operation }
|
||
|
JET_sntFail = 3; { callback for failure during progress }
|
||
|
|
||
|
{ Exception action }
|
||
|
|
||
|
JET_ExceptionMsgBox = $0001; { Display message box on exception }
|
||
|
JET_ExceptionNone = $0002; { Do nothing on exceptions }
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
// Online defragmentation options
|
||
|
JET_OnlineDefragDisable = $0000; // disable online defrag
|
||
|
JET_OnlineDefragAllOBSOLETE = $0001; // enable online defrag for everything (must be 1 for backward compatibility)
|
||
|
JET_OnlineDefragDatabases = $0002; // enable online defrag of databases
|
||
|
JET_OnlineDefragSpaceTrees = $0004; // enable online defrag of space trees
|
||
|
JET_OnlineDefragAll = $ffff; // enable online defrag for everything
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{********************************************************************}
|
||
|
{************************** ERROR CODES *****************************}
|
||
|
{********************************************************************}
|
||
|
|
||
|
{ The Error codes are not versioned with WINVER. }
|
||
|
|
||
|
{ SUCCESS }
|
||
|
|
||
|
JET_errSuccess = 0; { Successful Operation }
|
||
|
|
||
|
{ ERRORS }
|
||
|
|
||
|
JET_wrnNyi = -1; { Function Not Yet Implemented }
|
||
|
|
||
|
{ SYSTEM errors
|
||
|
{}
|
||
|
JET_errRfsFailure = -100; { Resource Failure Simulator failure }
|
||
|
JET_errRfsNotArmed = -101; { Resource Failure Simulator not initialized }
|
||
|
JET_errFileClose = -102; { Could not close file }
|
||
|
JET_errOutOfThreads = -103; { Could not start thread }
|
||
|
JET_errTooManyIO = -105; { System busy due to too many IOs }
|
||
|
JET_errTaskDropped = -106; { A requested async task could not be executed }
|
||
|
JET_errInternalError = -107; { Fatal internal error }
|
||
|
|
||
|
// BUFFER MANAGER errors
|
||
|
//
|
||
|
JET_errDatabaseBufferDependenciesCorrupted = -255; { Buffer dependencies improperly set. Recovery failure }
|
||
|
|
||
|
{ DIRECTORY MANAGER errors
|
||
|
{}
|
||
|
JET_wrnRemainingVersions = 321; { The version store is still active }
|
||
|
JET_errPreviousVersion = -322; { Version already existed. Recovery failure }
|
||
|
JET_errPageBoundary = -323; { Reached Page Boundary }
|
||
|
JET_errKeyBoundary = -324; { Reached Key Boundary }
|
||
|
JET_errBadPageLink = -327; { Database corrupted }
|
||
|
JET_errBadBookmark = -328; { Bookmark has no corresponding address in database }
|
||
|
JET_errNTSystemCallFailed = -334; // A call to the operating system failed
|
||
|
JET_errBadParentPageLink = -338; // Database corrupted
|
||
|
JET_errSPAvailExtCacheOutOfSync = -340; // AvailExt cache doesn't match btree
|
||
|
JET_errSPAvailExtCorrupted = -341; // AvailExt space tree is corrupt
|
||
|
JET_errSPAvailExtCacheOutOfMemory = -342; // Out of memory allocating an AvailExt cache node
|
||
|
JET_errSPOwnExtCorrupted = -343; // OwnExt space tree is corrupt
|
||
|
JET_errDbTimeCorrupted = -344; // Dbtime on current page is greater than global database dbtime
|
||
|
JET_wrnUniqueKey = 345; // seek on non-unique index yielded a unique key
|
||
|
JET_errKeyTruncated = -346; // key truncated on index that disallows key truncation
|
||
|
|
||
|
{ RECORD MANAGER errors
|
||
|
{}
|
||
|
JET_wrnSeparateLongValue = 406; { Column is a separated long-value }
|
||
|
// see below: JET_wrnRecordFoundGreater = JET_wrnSeekNotEqual;
|
||
|
// see below: JET_wrnRecordFoundLess = JET_wrnSeekNotEqual;
|
||
|
// see below: JET_errColumnIllegalNull = JET_errNullInvalid;
|
||
|
JET_errKeyTooBig = -408; { Key is too large }
|
||
|
|
||
|
{ LOGGING/RECOVERY errors
|
||
|
{}
|
||
|
JET_errInvalidLoggedOperation = -500; { Logged operation cannot be redone }
|
||
|
JET_errLogFileCorrupt = -501; { Log file is corrupt }
|
||
|
JET_errNoBackupDirectory = -503; { No backup directory given }
|
||
|
JET_errBackupDirectoryNotEmpty = -504; { The backup directory is not emtpy }
|
||
|
JET_errBackupInProgress = -505; { Backup is active already }
|
||
|
JET_errRestoreInProgress = -506; { Restore in progress }
|
||
|
JET_errMissingPreviousLogFile = -509; { Missing the log file for check point }
|
||
|
JET_errLogWriteFail = -510; { Failure writing to log file }
|
||
|
JET_errLogDisabledDueToRecoveryFailure = -511; { Try to log something after recovery faild }
|
||
|
JET_errCannotLogDuringRecoveryRedo = -512; { Try to log something during recovery redo }
|
||
|
JET_errLogGenerationMismatch = -513; { Name of logfile does not match internal generation number }
|
||
|
JET_errBadLogVersion = -514; { Version of log file is not compatible with Jet version }
|
||
|
JET_errInvalidLogSequence = -515; { Timestamp in next log does not match expected }
|
||
|
JET_errLoggingDisabled = -516; { Log is not active }
|
||
|
JET_errLogBufferTooSmall = -517; { Log buffer is too small for recovery }
|
||
|
JET_errLogSequenceEnd = -519; { Maximum log file number exceeded }
|
||
|
JET_errNoBackup = -520; { No backup in progress }
|
||
|
JET_errInvalidBackupSequence = -521; { Backup call out of sequence }
|
||
|
JET_errBackupNotAllowedYet = -523; { Cannot do backup now }
|
||
|
JET_errDeleteBackupFileFail = -524; { Could not delete backup file }
|
||
|
JET_errMakeBackupDirectoryFail = -525; { Could not make backup temp directory }
|
||
|
JET_errInvalidBackup = -526; { Cannot perform incremental backup when circular logging enabled }
|
||
|
JET_errRecoveredWithErrors = -527; { Restored with errors }
|
||
|
JET_errMissingLogFile = -528; { Current log file missing }
|
||
|
JET_errLogDiskFull = -529; { Log disk full }
|
||
|
JET_errBadLogSignature = -530; { Bad signature for a log file }
|
||
|
JET_errBadDbSignature = -531; { Bad signature for a db file }
|
||
|
JET_errBadCheckpointSignature = -532; { Bad signature for a checkpoint file }
|
||
|
JET_errCheckpointCorrupt = -533; { Checkpoint file not found or corrupt }
|
||
|
JET_errMissingPatchPage = -534; { Patch file page not found during recovery }
|
||
|
JET_errBadPatchPage = -535; { Patch file page is not valid }
|
||
|
JET_errRedoAbruptEnded = -536; { Redo abruptly ended due to sudden failure in reading logs from log file }
|
||
|
JET_errBadSLVSignature = -537; { Signature in SLV file does not agree with database }
|
||
|
JET_errPatchFileMissing = -538; { Hard restore detected that patch file is missing from backup set }
|
||
|
JET_errDatabaseLogSetMismatch = -539; { Database does not belong with the current set of log files }
|
||
|
JET_errDatabaseStreamingFileMismatch = -540; { Database and streaming file do not match each other }
|
||
|
JET_errLogFileSizeMismatch = -541; { actual log file size does not match JET_paramLogFileSize }
|
||
|
JET_errCheckpointFileNotFound = -542; { Could not locate checkpoint file }
|
||
|
JET_errRequiredLogFilesMissing = -543; { The required log files for recovery is missing. }
|
||
|
JET_errSoftRecoveryOnBackupDatabase = -544; { Soft recovery is intended on a backup database. Restore should be used instead }
|
||
|
JET_errLogFileSizeMismatchDatabasesConsistent = -545; { databases have been recovered, but the log file size used during recovery does not match JET_paramLogFileSize }
|
||
|
JET_errLogSectorSizeMismatch = -546; { the log file sector size does not match the current volume's sector size }
|
||
|
JET_errLogSectorSizeMismatchDatabasesConsistent = -547; { databases have been recovered, but the log file sector size (used during recovery) does not match the current volume's sector size }
|
||
|
JET_errLogSequenceEndDatabasesConsistent = -548; { databases have been recovered, but all possible log generations in the current sequence are used; delete all log files and the checkpoint file and backup the databases before continuing }
|
||
|
|
||
|
JET_errStreamingDataNotLogged = -549; { Illegal attempt to replay a streaming file operation where the data wasn't logged. Probably caused by an attempt to roll-forward with circular logging enabled }
|
||
|
|
||
|
JET_errDatabaseDirtyShutdown = -550; { Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown. }
|
||
|
JET_errDatabaseInconsistent = JET_errDatabaseDirtyShutdown; { OBSOLETE }
|
||
|
JET_errConsistentTimeMismatch = -551; { Database last consistent time unmatched }
|
||
|
JET_errDatabasePatchFileMismatch = -552; { Patch file is not generated from this backup }
|
||
|
JET_errEndingRestoreLogTooLow = -553; { The starting log number too low for the restore }
|
||
|
JET_errStartingRestoreLogTooHigh = -554; { The starting log number too high for the restore }
|
||
|
JET_errGivenLogFileHasBadSignature = -555; { Restore log file has bad signature }
|
||
|
JET_errGivenLogFileIsNotContiguous = -556; { Restore log file is not contiguous }
|
||
|
JET_errMissingRestoreLogFiles = -557; { Some restore log files are missing }
|
||
|
JET_wrnExistingLogFileHasBadSignature= 558; { Existing log file has bad signature }
|
||
|
JET_wrnExistingLogFileIsNotContiguous= 559; { Existing log file is not contiguous }
|
||
|
JET_errMissingFullBackup = -560; { The database miss a previous full backup befor incremental backup }
|
||
|
JET_errBadBackupDatabaseSize = -561; { The backup database size is not in 4k }
|
||
|
JET_errDatabaseAlreadyUpgraded = -562; { Attempted to upgrade a database that is already current }
|
||
|
JET_errDatabaseIncompleteUpgrade = -563; { Attempted to use a database which was only partially converted to the current format -- must restore from backup }
|
||
|
JET_wrnSkipThisRecord = 564; { INTERNAL ERROR }
|
||
|
JET_errMissingCurrentLogFiles = -565; { Some current log files are missing for continuous restore }
|
||
|
|
||
|
JET_errDbTimeTooOld = -566; { dbtime on page smaller than dbtimeBefore in record }
|
||
|
JET_errDbTimeTooNew = -567; { dbtime on page in advance of the dbtimeBefore in record }
|
||
|
JET_errMissingFileToBackup = -569; { Some log or patch files are missing during backup }
|
||
|
|
||
|
JET_errLogTornWriteDuringHardRestore = -570; { torn-write was detected in a backup set during hard restore }
|
||
|
JET_errLogTornWriteDuringHardRecovery = -571; { torn-write was detected during hard recovery (log was not part of a backup set) }
|
||
|
JET_errLogCorruptDuringHardRestore = -573; { corruption was detected in a backup set during hard restore }
|
||
|
JET_errLogCorruptDuringHardRecovery = -574; { corruption was detected during hard recovery (log was not part of a backup set) }
|
||
|
|
||
|
JET_errMustDisableLoggingForDbUpgrade = -575; { Cannot have logging enabled while attempting to upgrade db }
|
||
|
|
||
|
JET_errBadRestoreTargetInstance = -577; { TargetInstance specified for restore is not found or log files don't match }
|
||
|
JET_wrnTargetInstanceRunning = 578; { TargetInstance specified for restore is running }
|
||
|
|
||
|
JET_errRecoveredWithoutUndo = -579; { Soft recovery successfully replayed all operations, but the Undo phase of recovery was skipped }
|
||
|
|
||
|
JET_errDatabasesNotFromSameSnapshot = -580; { Databases to be restored are not from the same shadow copy backup }
|
||
|
JET_errSoftRecoveryOnSnapshot = -581; { Soft recovery on a database from a shadow copy backup set }
|
||
|
JET_errCommittedLogFilesMissing = -582; { One or more logs that were committed to this database, are missing. These log files are required to maintain durable ACID semantics, but not required to maintain consistency if the JET_bitReplayIgnoreLostLogs bit is specified during recovery. }
|
||
|
JET_errSectorSizeNotSupported = -583; { The physical sector size reported by the disk subsystem, is unsupported by ESE for a specific file type. }
|
||
|
JET_errRecoveredWithoutUndoDatabasesConsistent = -584; { Soft recovery successfully replayed all operations and intended to skip the Undo phase of recovery, but the Undo phase was not required }
|
||
|
JET_wrnCommittedLogFilesLost = 585; { One or more logs that were committed to this database, were not recovered. The database is still clean/consistent, as though the lost log's transactions were committed lazily (and lost). }
|
||
|
JET_errCommittedLogFileCorrupt = -586; { One or more logs were found to be corrupt during recovery. These log files are required to maintain durable ACID semantics, but not required to maintain consistency if the JET_bitIgnoreLostLogs bit and JET_paramDeleteOutOfRangeLogs is specified during recovery. }
|
||
|
JET_wrnCommittedLogFilesRemoved = 587; { One or more logs that were committed to this database, were no recovered. The database is still clean/consistent, as though the corrupted log's transactions were committed lazily (and lost). }
|
||
|
|
||
|
JET_wrnDatabaseRepaired = 595; { Database corruption has been repaired }
|
||
|
|
||
|
JET_errUnicodeTranslationBufferTooSmall = -601; { Unicode translation buffer too small }
|
||
|
JET_errUnicodeTranslationFail = -602; { Unicode normalization failed }
|
||
|
JET_errUnicodeNormalizationNotSupported = -603; { OS does not provide support for Unicode normalisation (and no normalisation callback was specified) }
|
||
|
|
||
|
JET_errExistingLogFileHasBadSignature = -610; { Existing log file has bad signature }
|
||
|
JET_errExistingLogFileIsNotContiguous = -611; { Existing log file is not contiguous }
|
||
|
|
||
|
JET_errLogReadVerifyFailure = -612; { Checksum error in log file during backup }
|
||
|
JET_errSLVReadVerifyFailure = -613; { Checksum error in SLV file during backup }
|
||
|
|
||
|
JET_errCheckpointDepthTooDeep = -614; // too many outstanding generations between checkpoint and current generation
|
||
|
|
||
|
JET_errRestoreOfNonBackupDatabase = -615; // hard recovery attempted on a database that wasn't a backup database
|
||
|
JET_errLogFileNotCopied = -616; // log truncation attempted but not all required logs were copied
|
||
|
|
||
|
JET_errInvalidGrbit = -900; { Invalid parameter }
|
||
|
|
||
|
JET_errTermInProgress = -1000; { Termination in progress }
|
||
|
JET_errFeatureNotAvailable = -1001; { API not supported }
|
||
|
JET_errInvalidName = -1002; { Invalid name }
|
||
|
JET_errInvalidParameter = -1003; { Invalid API parameter }
|
||
|
JET_wrnColumnNull = 1004; { Column is NULL-valued }
|
||
|
JET_wrnBufferTruncated = 1006; { Buffer too small for data }
|
||
|
JET_wrnDatabaseAttached = 1007; { Database is already attached }
|
||
|
JET_errDatabaseFileReadOnly = -1008; { Tried to attach a read-only database file for read/write operations }
|
||
|
JET_wrnSortOverflow = 1009; { Sort does not fit in memory }
|
||
|
JET_errInvalidDatabaseId = -1010; { Invalid database id }
|
||
|
JET_errOutOfMemory = -1011; { Out of Memory }
|
||
|
JET_errOutOfDatabaseSpace = -1012; { Maximum database size reached }
|
||
|
JET_errOutOfCursors = -1013; { Out of table cursors }
|
||
|
JET_errOutOfBuffers = -1014; { Out of database page buffers }
|
||
|
JET_errTooManyIndexes = -1015; { Too many indexes }
|
||
|
JET_errTooManyKeys = -1016; { Too many columns in an index }
|
||
|
JET_errRecordDeleted = -1017; { Record has been deleted }
|
||
|
JET_errReadVerifyFailure = -1018; { Checksum error on a database page }
|
||
|
JET_errPageNotInitialized = -1019; { Blank database page }
|
||
|
JET_errOutOfFileHandles = -1020; { Out of file handles }
|
||
|
JET_errDiskReadVerificationFailure = -1021; { The OS returned ERROR_CRC from file IO }
|
||
|
JET_errDiskIO = -1022; { Disk IO error }
|
||
|
JET_errInvalidPath = -1023; { Invalid file path }
|
||
|
JET_errInvalidSystemPath = -1024; { Invalid system path }
|
||
|
JET_errInvalidLogDirectory = -1025; { Invalid log directory }
|
||
|
JET_errRecordTooBig = -1026; { Record larger than maximum size }
|
||
|
JET_errTooManyOpenDatabases = -1027; { Too many open databases }
|
||
|
JET_errInvalidDatabase = -1028; { Not a database file }
|
||
|
JET_errNotInitialized = -1029; { Database engine not initialized }
|
||
|
JET_errAlreadyInitialized = -1030; { Database engine already initialized }
|
||
|
JET_errInitInProgress = -1031; { Database engine is being initialized }
|
||
|
JET_errFileAccessDenied = -1032; { Cannot access file, the file is locked or in use }
|
||
|
JET_errBufferTooSmall = -1038; { Buffer is too small }
|
||
|
JET_wrnSeekNotEqual = 1039; { Exact match not found during seek }
|
||
|
JET_errTooManyColumns = -1040; { Too many columns defined }
|
||
|
JET_errContainerNotEmpty = -1043; { Container is not empty }
|
||
|
JET_errInvalidFilename = -1044; { Filename is invalid }
|
||
|
JET_errInvalidBookmark = -1045; { Invalid bookmark }
|
||
|
JET_errColumnInUse = -1046; { Column used in an index }
|
||
|
JET_errInvalidBufferSize = -1047; { Data buffer doesn't match column size }
|
||
|
JET_errColumnNotUpdatable = -1048; { Cannot set column value }
|
||
|
JET_errIndexInUse = -1051; { Index is in use }
|
||
|
JET_errLinkNotSupported = -1052; { Link support unavailable }
|
||
|
JET_errNullKeyDisallowed = -1053; { Null keys are disallowed on index }
|
||
|
JET_errNotInTransaction = -1054; { Operation must be within a transaction }
|
||
|
JET_wrnNoErrorInfo = 1055; { No extended error information }
|
||
|
JET_wrnNoIdleActivity = 1058; { No idle activity occured }
|
||
|
JET_errTooManyActiveUsers = -1059; { Too many active database users }
|
||
|
JET_errInvalidCountry = -1061; { Invalid or unknown country code }
|
||
|
JET_errInvalidLanguageId = -1062; { Invalid or unknown language id }
|
||
|
JET_errInvalidCodePage = -1063; { Invalid or unknown code page }
|
||
|
JET_errInvalidLCMapStringFlags = -1064; { Invalid flags for LCMapString() }
|
||
|
JET_errVersionStoreEntryTooBig = -1065; { Attempted to create a version store entry (RCE) larger than a version bucket }
|
||
|
JET_errVersionStoreOutOfMemoryAndCleanupTimedOut = -1066; { Version store out of memory (and cleanup attempt failed to complete) }
|
||
|
JET_wrnNoWriteLock = 1067; { No write lock at transaction level 0 }
|
||
|
JET_wrnColumnSetNull = 1068; { Column set to NULL-value }
|
||
|
JET_errVersionStoreOutOfMemory = -1069; { Version store out of memory (cleanup already attempted) }
|
||
|
JET_errCannotIndex = -1071; { Cannot index escrow column or SLV column }
|
||
|
JET_errRecordNotDeleted = -1072; { Record has not been deleted }
|
||
|
JET_errTooManyMempoolEntries = -1073; { Too many mempool entries requested }
|
||
|
JET_errOutOfObjectIDs = -1074; { Out of btree ObjectIDs (perform offline defrag to reclaim freed/unused ObjectIds) }
|
||
|
JET_errOutOfLongValueIDs = -1075; { Long-value ID counter has reached maximum value. (perform offline defrag to reclaim free/unused LongValueIDs) }
|
||
|
JET_errOutOfAutoincrementValues = -1076; { Auto-increment counter has reached maximum value (offline defrag WILL NOT be able to reclaim free/unused Auto-increment values). }
|
||
|
JET_errOutOfDbtimeValues = -1077; { Dbtime counter has reached maximum value (perform offline defrag to reclaim free/unused Dbtime values) }
|
||
|
JET_errOutOfSequentialIndexValues = -1078; { Sequential index counter has reached maximum value (perform offline defrag to reclaim free/unused SequentialIndex values) }
|
||
|
|
||
|
JET_errRunningInOneInstanceMode = -1080; { Multi-instance call with single-instance mode enabled }
|
||
|
JET_errRunningInMultiInstanceMode = -1081; { Single-instance call with multi-instance mode enabled }
|
||
|
JET_errSystemParamsAlreadySet = -1082; { Global system parameters have already been set }
|
||
|
|
||
|
JET_errSystemPathInUse = -1083; { System path already used by another database instance }
|
||
|
JET_errLogFilePathInUse = -1084; { Logfile path already used by another database instance }
|
||
|
JET_errTempPathInUse = -1085; { Temp path already used by another database instance }
|
||
|
JET_errInstanceNameInUse = -1086; { Instance Name already in use }
|
||
|
|
||
|
JET_errInstanceUnavailable = -1090; { This instance cannot be used because it encountered a fatal error }
|
||
|
JET_errDatabaseUnavailable = -1091; { This database cannot be used because it encountered a fatal error }
|
||
|
JET_errInstanceUnavailableDueToFatalLogDiskFull = -1092; { This instance cannot be used because it encountered a log-disk-full error performing an operation (likely transaction rollback) that could not tolerate failure }
|
||
|
|
||
|
JET_errOutOfSessions = -1101; { Out of sessions }
|
||
|
JET_errWriteConflict = -1102; { Write lock failed due to outstanding write lock }
|
||
|
JET_errTransTooDeep = -1103; { Transactions nested too deeply }
|
||
|
JET_errInvalidSesid = -1104; { Invalid session handle }
|
||
|
JET_errWriteConflictPrimaryIndex = -1105; { Update attempted on uncommitted primary index }
|
||
|
JET_errInTransaction = -1108; { Operation not allowed within a transaction }
|
||
|
JET_errRollbackRequired = -1109; { Must rollback current transaction -- cannot commit or begin a new one }
|
||
|
JET_errTransReadOnly = -1110; { Read-only transaction tried to modify the database }
|
||
|
JET_errSessionWriteConflict = -1111; { Attempt to replace the same record by two diffrerent cursors in the same session }
|
||
|
|
||
|
JET_errRecordTooBigForBackwardCompatibility = -1112; { record would be too big if represented in a database format from a previous version of Jet }
|
||
|
JET_errCannotMaterializeForwardOnlySort = -1113; { The temp table could not be created due to parameters that conflict with JET_bitTTForwardOnly }
|
||
|
|
||
|
JET_errSesidTableIdMismatch = -1114; { This session handle can't be used with this table id }
|
||
|
JET_errInvalidInstance = -1115; { Invalid instance handle }
|
||
|
JET_errDirtyShutdown = -1116; { The instance was shutdown successfully but all the attached databases were left in a dirty state by request via JET_bitTermDirty }
|
||
|
|
||
|
|
||
|
JET_errDatabaseDuplicate = -1201; { Database already exists }
|
||
|
JET_errDatabaseInUse = -1202; { Database in use }
|
||
|
JET_errDatabaseNotFound = -1203; { No such database }
|
||
|
JET_errDatabaseInvalidName = -1204; { Invalid database name }
|
||
|
JET_errDatabaseInvalidPages = -1205; { Invalid number of pages }
|
||
|
JET_errDatabaseCorrupted = -1206; { Non database file or corrupted db }
|
||
|
JET_errDatabaseLocked = -1207; { Database exclusively locked }
|
||
|
JET_errCannotDisableVersioning = -1208; { Cannot disable versioning for this database }
|
||
|
JET_errInvalidDatabaseVersion = -1209; { Database engine is incompatible with database }
|
||
|
|
||
|
{ The following error code are for NT clients only. It will return such error during
|
||
|
* JetInit if JET_paramCheckFormatWhenOpenFail is set.
|
||
|
}
|
||
|
JET_errDatabase200Format = -1210; { The database is in an older (200) format }
|
||
|
JET_errDatabase400Format = -1211; { The database is in an older (400) format }
|
||
|
JET_errDatabase500Format = -1212; { The database is in an older (500) format }
|
||
|
|
||
|
JET_errPageSizeMismatch = -1213; { The database page size does not match the engine }
|
||
|
JET_errTooManyInstances = -1214; { Cannot start any more database instances }
|
||
|
JET_errDatabaseSharingViolation = -1215; { A different database instance is using this database }
|
||
|
JET_errAttachedDatabaseMismatch = -1216; { An outstanding database attachment has been detected at the start or end of recovery, but database is missing or does not match attachment info }
|
||
|
JET_errDatabaseInvalidPath = -1217; { Specified path to database file is illegal }
|
||
|
JET_errDatabaseIdInUse = -1218; { A database is being assigned an id already in use }
|
||
|
JET_errForceDetachNotAllowed = -1219; { Force Detach allowed only after normal detach errored out }
|
||
|
JET_errCatalogCorrupted = -1220; { Corruption detected in catalog }
|
||
|
JET_errPartiallyAttachedDB = -1221; { Database is partially attached. Cannot complete attach operation }
|
||
|
JET_errDatabaseSignInUse = -1222; { Database with same signature in use }
|
||
|
|
||
|
JET_errDatabaseCorruptedNoRepair = -1224; { Corrupted db but repair not allowed }
|
||
|
JET_errInvalidCreateDbVersion = -1225; { recovery tried to replay a database creation, but the database was originally created with an incompatible (likely older) version of the database engine }
|
||
|
|
||
|
|
||
|
JET_wrnTableEmpty = 1301; { Opened an empty table }
|
||
|
JET_errTableLocked = -1302; { Table is exclusively locked }
|
||
|
JET_errTableDuplicate = -1303; { Table already exists }
|
||
|
JET_errTableInUse = -1304; { Table is in use, cannot lock }
|
||
|
JET_errObjectNotFound = -1305; { No such table or object }
|
||
|
JET_errDensityInvalid = -1307; { Bad file/index density }
|
||
|
JET_errTableNotEmpty = -1308; { Table is not empty }
|
||
|
JET_errInvalidTableId = -1310; { Invalid table id }
|
||
|
JET_errTooManyOpenTables = -1311; { Cannot open any more tables (cleanup already attempted) }
|
||
|
JET_errIllegalOperation = -1312; { Oper. not supported on table }
|
||
|
JET_errTooManyOpenTablesAndCleanupTimedOut = -1313; { Cannot open any more tables (cleanup attempt failed to complete) }
|
||
|
JET_errObjectDuplicate = -1314; { Table or object name in use }
|
||
|
JET_errInvalidObject = -1316; { Object is invalid for operation }
|
||
|
JET_errCannotDeleteTempTable = -1317; { Use CloseTable instead of DeleteTable to delete temp table }
|
||
|
JET_errCannotDeleteSystemTable = -1318; { Illegal attempt to delete a system table }
|
||
|
JET_errCannotDeleteTemplateTable = -1319; { Illegal attempt to delete a template table }
|
||
|
JET_errExclusiveTableLockRequired = -1322; { Must have exclusive lock on table. }
|
||
|
JET_errFixedDDL = -1323; { DDL operations prohibited on this table }
|
||
|
JET_errFixedInheritedDDL = -1324; { On a derived table, DDL operations are prohibited on inherited portion of DDL }
|
||
|
JET_errCannotNestDDL = -1325; { Nesting of hierarchical DDL is not currently supported. }
|
||
|
JET_errDDLNotInheritable = -1326; { Tried to inherit DDL from a table not marked as a template table. }
|
||
|
JET_wrnTableInUseBySystem = 1327; { System cleanup has a cursor open on the table }
|
||
|
JET_errInvalidSettings = -1328; { System parameters were set improperly }
|
||
|
JET_errClientRequestToStopJetService = -1329; { Client has requested stop service }
|
||
|
JET_errCannotAddFixedVarColumnToDerivedTable = -1330; { Template table was created with NoFixedVarColumnsInDerivedTables }
|
||
|
|
||
|
{ DDL= errors
|
||
|
{}
|
||
|
//= Note: Some DDL errors have snuck into other categories.
|
||
|
JET_errIndexCantBuild = -1401; { Index build failed }
|
||
|
JET_errIndexHasPrimary = -1402; { Primary index already defined }
|
||
|
JET_errIndexDuplicate = -1403; { Index is already defined }
|
||
|
JET_errIndexNotFound = -1404; { No such index }
|
||
|
JET_errIndexMustStay = -1405; { Cannot delete clustered index }
|
||
|
JET_errIndexInvalidDef = -1406; { Illegal index definition }
|
||
|
JET_errInvalidCreateIndex = -1409; { Invalid create index description }
|
||
|
JET_errTooManyOpenIndexes = -1410; { Out of index description blocks }
|
||
|
JET_errMultiValuedIndexViolation = -1411; { Non-unique inter-record index keys generated for a multivalued index }
|
||
|
JET_errIndexBuildCorrupted = -1412; { Failed to build a secondary index that properly reflects primary index }
|
||
|
JET_errPrimaryIndexCorrupted = -1413; { Primary index is corrupt. The database must be defragmented }
|
||
|
JET_errSecondaryIndexCorrupted = -1414; { Secondary index is corrupt. The database must be defragmented }
|
||
|
JET_wrnCorruptIndexDeleted = 1415; { Out of date index removed }
|
||
|
JET_errInvalidIndexId = -1416; { Illegal index id }
|
||
|
|
||
|
JET_errIndexTuplesSecondaryIndexOnly = -1430; // tuple index can only be on a secondary index
|
||
|
JET_errIndexTuplesTooManyColumns = -1431; // tuple index may only have eleven columns in the index
|
||
|
JET_errIndexTuplesOneColumnOnly = JET_errIndexTuplesTooManyColumns; { OBSOLETE }
|
||
|
JET_errIndexTuplesNonUniqueOnly = -1432; // tuple index must be a non-unique index
|
||
|
JET_errIndexTuplesTextBinaryColumnsOnly = -1433; // tuple index must be on a text/binary column
|
||
|
JET_errIndexTuplesTextColumnsOnly = JET_errIndexTuplesTextBinaryColumnsOnly; { OBSOLETE }
|
||
|
JET_errIndexTuplesVarSegMacNotAllowed = -1434; // tuple index does not allow setting cbVarSegMac
|
||
|
JET_errIndexTuplesInvalidLimits = -1435; // invalid min/max tuple length or max characters to index specified
|
||
|
JET_errIndexTuplesCannotRetrieveFromIndex = -1436; // cannot call RetrieveColumn() with RetrieveFromIndex on a tuple index
|
||
|
JET_errIndexTuplesKeyTooSmall = -1437; // specified key does not meet minimum tuple length
|
||
|
|
||
|
{ DML= errors
|
||
|
{}
|
||
|
//= Note: Some DML errors have snuck into other categories.
|
||
|
// Note:= Some DDL errors have inappropriately snuck in here.
|
||
|
JET_errColumnLong = -1501; { Column value is long }
|
||
|
JET_errColumnNoChunk = -1502; { No such chunk in long value }
|
||
|
JET_errColumnDoesNotFit = -1503; { Field will not fit in record }
|
||
|
JET_errNullInvalid = -1504; { Null not valid }
|
||
|
JET_errColumnIndexed = -1505; { Column indexed, cannot delete }
|
||
|
JET_errColumnTooBig = -1506; { Field length is greater than maximum }
|
||
|
JET_errColumnNotFound = -1507; { No such column }
|
||
|
JET_errColumnDuplicate = -1508; { Field is already defined }
|
||
|
JET_errMultiValuedColumnMustBeTagged = -1509; { Attempted to create a multi-valued column, but column was not Tagged }
|
||
|
JET_errColumnRedundant = -1510; { Second autoincrement or version column }
|
||
|
JET_errInvalidColumnType = -1511; { Invalid column data type }
|
||
|
JET_wrnColumnMaxTruncated = 1512; { Max length too big, truncated }
|
||
|
JET_errTaggedNotNULL = -1514; { No non-NULL tagged columns }
|
||
|
JET_errNoCurrentIndex = -1515; { Invalid w/o a current index }
|
||
|
JET_errKeyIsMade = -1516; { The key is completely made }
|
||
|
JET_errBadColumnId = -1517; { Column Id Incorrect }
|
||
|
JET_errBadItagSequence = -1518; { Bad itagSequence for tagged column }
|
||
|
JET_errColumnInRelationship = -1519; { Cannot delete, column participates in relationship }
|
||
|
JET_wrnCopyLongValue = 1520; { Single instance column bursted }
|
||
|
JET_errCannotBeTagged = -1521; { AutoIncrement and Version cannot be tagged }
|
||
|
JET_errDefaultValueTooBig = -1524; { Default value exceeds maximum size }
|
||
|
JET_errMultiValuedDuplicate = -1525; { Duplicate detected on a unique multi-valued column }
|
||
|
JET_errLVCorrupted = -1526; { Corruption encountered in long-value tree }
|
||
|
JET_errMultiValuedDuplicateAfterTruncation = -1528; { Duplicate detected on a unique multi-valued column after data was normalized, and normalizing truncated the data before comparison }
|
||
|
JET_errDerivedColumnCorruption = -1529; { Invalid column in derived table }
|
||
|
JET_errInvalidPlaceholderColumn = -1530; { Tried to convert column to a primary index placeholder, but column doesn't meet necessary criteria }
|
||
|
JET_wrnColumnSkipped = 1531; { Column value(s) not returned because the corresponding column id or itagSequence requested for enumeration was null }
|
||
|
JET_wrnColumnNotLocal = 1532; { Column value(s) not returned because they could not be reconstructed from the data at hand }
|
||
|
JET_wrnColumnMoreTags = 1533; { Column values exist that were not requested for enumeration }
|
||
|
JET_wrnColumnTruncated = 1534; { Column value truncated at the requested size limit during enumeration }
|
||
|
JET_wrnColumnPresent = 1535; { Column values exist but were not returned by request }
|
||
|
JET_wrnColumnSingleValue = 1536; { Column value returned in JET_COLUMNENUM as a result of JET_bitEnumerateCompressOutput }
|
||
|
JET_wrnColumnDefault = 1537; { Column value(s) not returned because they were set to their default value(s) and JET_bitEnumerateIgnoreDefault was specified }
|
||
|
JET_errColumnCannotBeCompressed = -1538; { Only JET_coltypLongText and JET_coltypLongBinary columns can be compressed }
|
||
|
JET_wrnColumnNotInRecord = 1539; { Column value(s) not returned because they could not be reconstructed from the data in the record }
|
||
|
|
||
|
JET_errRecordNotFound = -1601; { The key was not found }
|
||
|
JET_errRecordNoCopy = -1602; { No working buffer }
|
||
|
JET_errNoCurrentRecord = -1603; { Currency not on a record }
|
||
|
JET_errRecordPrimaryChanged = -1604; { Primary key may not change }
|
||
|
JET_errKeyDuplicate = -1605; { Illegal duplicate key }
|
||
|
JET_errAlreadyPrepared = -1607; { Attempted to update record when record update was already in progress }
|
||
|
JET_errKeyNotMade = -1608; { No call to JetMakeKey }
|
||
|
JET_errUpdateNotPrepared = -1609; { No call to JetPrepareUpdate }
|
||
|
JET_wrnDataHasChanged = 1610; { Data has changed }
|
||
|
JET_errDataHasChanged = -1611; { Data has changed, operation aborted }
|
||
|
JET_wrnKeyChanged = 1618; { Moved to new key }
|
||
|
JET_errLanguageNotSupported = -1619; { Windows installation does not support language }
|
||
|
JET_errDecompressionFailed = -1620; { Internal error: data could not be decompressed }
|
||
|
|
||
|
{ Sort= Table errors
|
||
|
{}
|
||
|
JET_errTooManySorts = -1701; { Too many sort processes }
|
||
|
JET_errInvalidOnSort = -1702; { Invalid operation on Sort }
|
||
|
|
||
|
{ Other errors
|
||
|
{}
|
||
|
JET_errTempFileOpenError = -1803; { Temp file could not be opened }
|
||
|
JET_errTooManyAttachedDatabases = -1805; { Too many open databases }
|
||
|
JET_errDiskFull = -1808; { No space left on disk }
|
||
|
JET_errPermissionDenied = -1809; { Permission denied }
|
||
|
JET_errFileNotFound = -1811; { File not found }
|
||
|
JET_errFileInvalidType = -1812; { Invalid file type }
|
||
|
JET_wrnFileOpenReadOnly = 1813; { Database file is read only }
|
||
|
|
||
|
JET_errAfterInitialization = -1850; { Cannot Restore after init. }
|
||
|
JET_errLogCorrupted = -1852; { Logs could not be interpreted }
|
||
|
|
||
|
JET_errInvalidOperation = -1906; { Invalid operation }
|
||
|
JET_errAccessDenied = -1907; { Access denied }
|
||
|
JET_wrnIdleFull = 1908; { Idle registry full }
|
||
|
JET_errTooManySplits = -1909; { Infinite split }
|
||
|
JET_errSessionSharingViolation = -1910; { Multiple threads are using the same session }
|
||
|
JET_errEntryPointNotFound = -1911; { An entry point in a DLL we require could not be found }
|
||
|
JET_errSessionContextAlreadySet = -1912; { Specified session already has a session context set }
|
||
|
JET_errSessionContextNotSetByThisThread = -1913; { Tried to reset session context, but current thread did not orignally set the session context }
|
||
|
JET_errSessionInUse = -1914; { Tried to terminate session in use }
|
||
|
|
||
|
JET_errRecordFormatConversionFailed = -1915; { Internal error during dynamic record format conversion }
|
||
|
JET_errOneDatabasePerSession = -1916; { Just one open user database per session is allowed (JET_paramOneDatabasePerSession) }
|
||
|
JET_errRollbackError = -1917; { error during rollback }
|
||
|
|
||
|
JET_wrnDefragAlreadyRunning = 2000; { Online defrag already running on specified database }
|
||
|
JET_wrnDefragNotRunning = 2001; { Online defrag not running on specified database }
|
||
|
|
||
|
|
||
|
JET_wrnCallbackNotRegistered = 2100; { Unregistered a non-existant callback function }
|
||
|
JET_errCallbackFailed = -2101; { A callback failed }
|
||
|
JET_errCallbackNotResolved = -2102; { A callback function could not be found }
|
||
|
|
||
|
JET_errSpaceHintsInvalid = -2103; { An element of the JET space hints structure was not correct or actionable. }
|
||
|
|
||
|
|
||
|
JET_errOSSnapshotInvalidSequence = -2401; { OS Shadow copy API used in an invalid sequence }
|
||
|
JET_errOSSnapshotTimeOut = -2402; { OS Shadow copy ended with time-out }
|
||
|
JET_errOSSnapshotNotAllowed = -2403; { OS Shadow copy not allowed (backup or recovery in progress) }
|
||
|
JET_errOSSnapshotInvalidSnapId = -2404; { invalid JET_OSSNAPID }
|
||
|
|
||
|
JET_errLSCallbackNotSpecified = -3000; { Attempted to use Local Storage without a callback function being specified }
|
||
|
JET_errLSAlreadySet = -3001; { Attempted to set Local Storage for an object which already had it set }
|
||
|
JET_errLSNotSet = -3002; { Attempted to retrieve Local Storage from an object which didn't have it set }
|
||
|
|
||
|
{* FILE and DISK ERRORS
|
||
|
*}
|
||
|
//JET_errFileAccessDenied -1032
|
||
|
//JET_errFileNotFound -1811
|
||
|
//JET_errInvalidFilename -1044
|
||
|
JET_errFileIOSparse = -4000; { an I/O was issued to a location that was sparse }
|
||
|
JET_errFileIOBeyondEOF = -4001; { a read was issued to a location beyond EOF (writes will expand the file) }
|
||
|
JET_errFileIOAbort = -4002; { instructs the JET_ABORTRETRYFAILCALLBACK caller to abort the specified I/O }
|
||
|
JET_errFileIORetry = -4003; { instructs the JET_ABORTRETRYFAILCALLBACK caller to retry the specified I/O }
|
||
|
JET_errFileIOFail = -4004; { instructs the JET_ABORTRETRYFAILCALLBACK caller to fail the specified I/O }
|
||
|
JET_errFileCompressed = -4005; { read/write access is not supported on compressed files }
|
||
|
|
||
|
// further RECORD MANAGER errors
|
||
|
JET_wrnRecordFoundGreater = JET_wrnSeekNotEqual;
|
||
|
JET_wrnRecordFoundLess = JET_wrnSeekNotEqual;
|
||
|
JET_errColumnIllegalNull = JET_errNullInvalid;
|
||
|
|
||
|
|
||
|
{********************************************************************}
|
||
|
{***************************** PROTOTYPES ***************************}
|
||
|
{********************************************************************}
|
||
|
|
||
|
{$IFDEF DYNAMIC_LINK}
|
||
|
|
||
|
function JetGetDatabaseFileInfo(szDatabaseName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetInit(pinstance: PJET_INSTANCE): JET_ERR; stdcall;
|
||
|
|
||
|
function JetCreateInstance(out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetTerm2(instance: JET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetSetSystemParameter(pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetBeginSession(instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCSTR;
|
||
|
szPassword: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetVersion(sesid: JET_SESID;
|
||
|
out wVersion: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetAttachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetOpenDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect: JET_PCSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetOpenTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetMove(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRow: long;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetTableColumnInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetRetrieveColumns(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pretrievecolumn: PJET_RETRIEVECOLUMN; // _ecount( cretrievecolumn )
|
||
|
cretrievecolumn: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetCloseTable(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetCloseDatabase(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetDetachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetEndSession(sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$ELSE}
|
||
|
|
||
|
function JetInit(pinstance: PJET_INSTANCE): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetInit2(pinstance: PJET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
JetInit3A = JetInit3;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetInit3A(pinstance: PJET_INSTANCE;
|
||
|
prstInfo: PJET_RSTINFO_A;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetInit3W(pinstance: PJET_INSTANCE;
|
||
|
prstInfo: PJET_RSTINFO_W;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetInit3(pinstance: PJET_INSTANCE;
|
||
|
prstInfo: PJET_RSTINFO_W;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetInit3(pinstance: PJET_INSTANCE;
|
||
|
prstInfo: PJET_RSTINFO_A;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateInstance(out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateInstanceA(out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateInstanceW(out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateInstance(out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateInstance(out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateInstance2(out instance : JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR;
|
||
|
szDisplayName : JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateInstance2A(out instance : JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR;
|
||
|
szDisplayName : JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateInstance2W(out instance : JET_INSTANCE;
|
||
|
szInstanceName: JET_PCWSTR;
|
||
|
szDisplayName : JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateInstance2(out instance : JET_INSTANCE;
|
||
|
szInstanceName: JET_PCWSTR;
|
||
|
szDisplayName : JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateInstance2(out instance : JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR;
|
||
|
szDisplayName : JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetInstanceMiscInfo(instance: JET_INSTANCE;
|
||
|
pvResult: Pointer;
|
||
|
cbMax: Cardinal; // bytes
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetTerm(instance: JET_INSTANCE): JET_ERR; stdcall;
|
||
|
|
||
|
function JetTerm2(instance: JET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetStopService(): JET_ERR; stdcall;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetStopServiceInstance(instance: JET_INSTANCE): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetStopBackup(): JET_ERR; stdcall;
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetStopBackupInstance(instance: JET_INSTANCE): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetSystemParameter(pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetSystemParameterA(pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetSystemParameterW(pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetSystemParameter(pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetSystemParameter(pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetSystemParameter(instance: JET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
plParam: PtrPointer;
|
||
|
szParam: JET_PSTR; // _bcount( cbMax )
|
||
|
cbMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetSystemParameterA(instance: JET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
plParam: PtrPointer;
|
||
|
szParam: JET_PSTR; // _bcount( cbMax )
|
||
|
cbMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetSystemParameterW(instance: JET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
plParam : PtrPointer;
|
||
|
szParam : JET_PWSTR; // _bcount( cbMax )
|
||
|
cbMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetSystemParameter(instance: JET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
plParam : PtrPointer;
|
||
|
szParam : JET_PWSTR; // _bcount( cbMax )
|
||
|
cbMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetSystemParameter(instance: JET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
plParam: PtrPointer;
|
||
|
szParam: JET_PSTR; // _bcount( cbMax )
|
||
|
cbMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetEnableMultiInstance(psetsysparam: PJET_SETSYSPARAM_A; // __ecount( csetsysparam )
|
||
|
csetsysparam: Cardinal;
|
||
|
pcsetsucceed: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetEnableMultiInstanceA(psetsysparam: PJET_SETSYSPARAM_A; // __ecount( csetsysparam )
|
||
|
csetsysparam: Cardinal;
|
||
|
pcsetsucceed: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetEnableMultiInstanceW(psetsysparam: PJET_SETSYSPARAM_W; // __ecount( csetsysparam )
|
||
|
csetsysparam: Cardinal;
|
||
|
pcsetsucceed: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetEnableMultiInstance(psetsysparam: PJET_SETSYSPARAM_W; // __ecount( csetsysparam )
|
||
|
csetsysparam: Cardinal;
|
||
|
pcsetsucceed: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetEnableMultiInstance(psetsysparam: PJET_SETSYSPARAM_A; // __ecount( csetsysparam )
|
||
|
csetsysparam: Cardinal;
|
||
|
pcsetsucceed: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetGetThreadStats(pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetBeginSession(instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCSTR;
|
||
|
szPassword: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetBeginSessionA(instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCSTR;
|
||
|
szPassword: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetBeginSessionW(instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCWSTR;
|
||
|
szPassword: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetBeginSession(instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCWSTR;
|
||
|
szPassword: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetBeginSession(instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCSTR;
|
||
|
szPassword: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDupSession(sesid: JET_SESID;
|
||
|
out psesid: JET_SESID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetEndSession(sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetVersion(sesid: JET_SESID;
|
||
|
out wVersion: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetIdle(sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateDatabase(sesid : JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect : JET_PCSTR;
|
||
|
out dbid : JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateDatabaseA(sesid : JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect : JET_PCSTR;
|
||
|
out dbid : JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateDatabaseW(sesid : JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
szConnect : JET_PCWSTR;
|
||
|
out dbid : JET_DBID;
|
||
|
grbit : JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateDatabase(sesid : JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
szConnect : JET_PCWSTR;
|
||
|
out dbid : JET_DBID;
|
||
|
grbit : JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateDatabase(sesid : JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect : JET_PCSTR;
|
||
|
out dbid : JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateDatabase2A(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateDatabase2W(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR ;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR ;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetAttachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetAttachDatabaseA(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetAttachDatabaseW(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetAttachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetAttachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetAttachDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetAttachDatabase2A(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetAttachDatabase2W(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetAttachDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetAttachDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
cpgDatabaseSizeMax: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDetachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDetachDatabaseA(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDetachDatabaseW(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDetachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDetachDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDetachDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDetachDatabase2A(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDetachDatabase2W(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDetachDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDetachDatabase2(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetObjectInfo(sesid : JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
objtyp : JET_OBJTYP;
|
||
|
szContainerName: JET_PCSTR;
|
||
|
szObjectName : JET_PCSTR;
|
||
|
pvResult : Pointer; // _bcount( cbMax )
|
||
|
cbMax : Cardinal;
|
||
|
InfoLevel : Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetObjectInfoA(sesid : JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
objtyp : JET_OBJTYP;
|
||
|
szContainerName: JET_PCSTR;
|
||
|
szObjectName : JET_PCSTR;
|
||
|
pvResult : Pointer; // _bcount( cbMax )
|
||
|
cbMax : Cardinal;
|
||
|
InfoLevel : Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetObjectInfoW(sesid : JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
objtyp : JET_OBJTYP;
|
||
|
szContainerName: JET_PCWSTR;
|
||
|
szObjectName : JET_PCWSTR;
|
||
|
pvResult : Pointer; // _bcount( cbMax )
|
||
|
cbMax : Cardinal;
|
||
|
InfoLevel : Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetObjectInfo(sesid : JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
objtyp : JET_OBJTYP;
|
||
|
szContainerName: JET_PCWSTR;
|
||
|
szObjectName : JET_PCWSTR;
|
||
|
pvResult : Pointer; // _bcount( cbMax )
|
||
|
cbMax : Cardinal;
|
||
|
InfoLevel : Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetObjectInfo(sesid : JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
objtyp : JET_OBJTYP;
|
||
|
szContainerName: JET_PCSTR;
|
||
|
szObjectName : JET_PCSTR;
|
||
|
pvResult : Pointer; // _bcount( cbMax )
|
||
|
cbMax : Cardinal;
|
||
|
InfoLevel : Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTableInfo(sesid : JET_SESID;
|
||
|
tableid : JET_TABLEID;
|
||
|
pvResult : Pointer; // _bcount( cbMax )
|
||
|
cbMax : Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
lPages : Cardinal;
|
||
|
lDensity: Cardinal;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateTableA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
lPages : Cardinal;
|
||
|
lDensity: Cardinal;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateTableW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
lPages : Cardinal;
|
||
|
lDensity: Cardinal;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
lPages : Cardinal;
|
||
|
lDensity: Cardinal;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
lPages : Cardinal;
|
||
|
lDensity: Cardinal;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateTableColumnIndex(sesid: JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateTableColumnIndexA(sesid: JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE_A
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateTableColumnIndexW(sesid: JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE_W
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTableColumnIndex(sesid: JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE_W
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateTableColumnIndex(sesid: JET_SESID;
|
||
|
dbid : JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateTableColumnIndex2(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE2_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateTableColumnIndex2A(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE2_A
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateTableColumnIndex2W(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE2_W
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTableColumnIndex2(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE2_W
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateTableColumnIndex2(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
var tablecreate: JET_TABLECREATE2_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
|
||
|
function JetCreateTableColumnIndex3A(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
tablecreate: JET_TABLECREATE3_A
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetCreateTableColumnIndex3W(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
tablecreate: JET_TABLECREATE3_W
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTableColumnIndex3(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
tablecreate: JET_TABLECREATE3_W
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateTableColumnIndex3(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
tablecreate: JET_TABLECREATE3_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteTableA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteTableW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDeleteTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRenameTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szName: JET_PCSTR;
|
||
|
szNameNew: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRenameTableA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szName: JET_PCSTR;
|
||
|
szNameNew: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRenameTableW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szName: JET_PCWSTR ;
|
||
|
szNameNew: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRenameTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szName: JET_PCWSTR ;
|
||
|
szNameNew: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetRenameTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szName: JET_PCSTR;
|
||
|
szNameNew: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetTableColumnInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTableColumnInfoA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetTableColumnInfoW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTableColumnInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetTableColumnInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetColumnInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetColumnInfoA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetColumnInfoW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetColumnInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetColumnInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetAddColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
const columndef: JET_COLUMNDEF;
|
||
|
pvDefault: Pointer; // _bcount( cbDefault )
|
||
|
cbDefault: Cardinal;
|
||
|
pcolumnid: PJET_COLUMNID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetAddColumnA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
const columndef: JET_COLUMNDEF;
|
||
|
pvDefault: Pointer; // _bcount( cbDefault )
|
||
|
cbDefault: Cardinal;
|
||
|
pcolumnid: PJET_COLUMNID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetAddColumnW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
const columndef: JET_COLUMNDEF;
|
||
|
pvDefault: Pointer; // _bcount( cbDefault )
|
||
|
cbDefault: Cardinal;
|
||
|
pcolumnid: PJET_COLUMNID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetAddColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
const columndef: JET_COLUMNDEF;
|
||
|
pvDefault: Pointer; // _bcount( cbDefault )
|
||
|
cbDefault: Cardinal;
|
||
|
pcolumnid: PJET_COLUMNID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetAddColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
const columndef: JET_COLUMNDEF;
|
||
|
pvDefault: Pointer; // _bcount( cbDefault )
|
||
|
cbDefault: Cardinal;
|
||
|
pcolumnid: PJET_COLUMNID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteColumnA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteColumnW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDeleteColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteColumn2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteColumn2A(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteColumn2W(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteColumn2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDeleteColumn2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRenameColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szName: JET_PCSTR;
|
||
|
szNameNew: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRenameColumnA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szName: JET_PCSTR;
|
||
|
szNameNew: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRenameColumnW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szName: JET_PCWSTR;
|
||
|
szNameNew: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRenameColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szName: JET_PCWSTR;
|
||
|
szNameNew: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetRenameColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szName: JET_PCSTR;
|
||
|
szNameNew: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetColumnDefaultValue(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetColumnDefaultValueA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetColumnDefaultValueW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetColumnDefaultValue(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
szColumnName: JET_PCWSTR;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetColumnDefaultValue(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetTableIndexInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTableIndexInfoA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetTableIndexInfoW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTableIndexInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetTableIndexInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetIndexInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetIndexInfoA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetIndexInfoW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetIndexInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetIndexInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbResult )
|
||
|
cbResult: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateIndex(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
szKey: PAnsiChar; // _bcount( cbKey )
|
||
|
cbKey: Cardinal;
|
||
|
lDensity: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateIndexA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
szKey: PAnsiChar; // _bcount( cbKey )
|
||
|
cbKey: Cardinal;
|
||
|
lDensity: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateIndexW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
szKey: PWideChar; // _bcount( cbKey )
|
||
|
cbKey: Cardinal;
|
||
|
lDensity: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateIndex(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
szKey: PWideChar; // _bcount( cbKey )
|
||
|
cbKey: Cardinal;
|
||
|
lDensity: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateIndex(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
szKey: PAnsiChar; // _bcount( cbKey )
|
||
|
cbKey: Cardinal;
|
||
|
lDensity: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateIndex2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE_A; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateIndex2A(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE_A; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateIndex2W(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE_W; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateIndex2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE_W; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateIndex2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE_A; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
|
||
|
function JetCreateIndex3A(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE2_A; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetCreateIndex3W(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate :PJET_INDEXCREATE2_W; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateIndex3(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate :PJET_INDEXCREATE2_W; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCreateIndex3(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pindexcreate: PJET_INDEXCREATE2_A; // __ecount( cIndexCreate )
|
||
|
cIndexCreate: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteIndex(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteIndexA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteIndexW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteIndex(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDeleteIndex(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetBeginTransaction(sesid: JET_SESID): JET_ERR; stdcall;
|
||
|
|
||
|
function JetBeginTransaction2(sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
function JetCommitTransaction(sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetRollback(sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
|
||
|
function JetGetDatabaseInfo(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetDatabaseFileInfo(szDatabaseName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetDatabaseFileInfoA(szDatabaseName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetDatabaseFileInfoW(szDatabaseName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetDatabaseFileInfo(szDatabaseName: JET_PCWSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetDatabaseFileInfo(szDatabaseName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect: JET_PCSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenDatabaseA(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect: JET_PCSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenDatabaseW(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
szConnect: JET_PCWSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCWSTR;
|
||
|
szConnect: JET_PCWSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetOpenDatabase(sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect: JET_PCSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCloseDatabase(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenTableA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenTableW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetOpenTable(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetSetTableSequential(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetResetTableSequential(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCloseTable(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetDelete(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetUpdate(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvBookmark: Pointer; // _bcount_part( cbBookmark, *pcbActual )
|
||
|
cbBookmark: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
function JetUpdate2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvBookmark: Pointer; // _bcount_part( cbBookmark, *pcbActual )
|
||
|
cbBookmark: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetEscrowUpdate(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
columnid: JET_COLUMNID;
|
||
|
pv: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
pvOld: Pointer; // _bcount_part( cbOldMax, *pcbOldActual )
|
||
|
cbOldMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetRetrieveColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
columnid: JET_COLUMNID;
|
||
|
pvData: Pointer; // _bcount_part( cbData, *pcbActual )
|
||
|
cbData: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
pretinfo: PJET_RETINFO
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetRetrieveColumns(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pretrievecolumn: PJET_RETRIEVECOLUMN; // _ecount( cretrievecolumn )
|
||
|
cretrievecolumn: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetEnumerateColumns(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cEnumColumnId: Cardinal;
|
||
|
rgEnumColumnId: PJET_ENUMCOLUMNID; // __ecount( cEnumColumnId )
|
||
|
out cEnumColumn: Cardinal;
|
||
|
out prgEnumColumn: PJET_ENUMCOLUMN; // _ecount( *pcEnumColumn )
|
||
|
pfnRealloc: JET_PFNREALLOC;
|
||
|
pvReallocContext: Pointer;
|
||
|
cbDataMost: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetGetRecordSize(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
out recsize: JET_RECSIZE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
function JetGetRecordSize2(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
out recsize: JET_RECSIZE2;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetColumn(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
columnid: JET_COLUMNID;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
psetinfo: PJET_SETINFO
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetSetColumns(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
psetcolumn: PJET_SETCOLUMN; // __ecount( csetcolumn )
|
||
|
csetcolumn: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetPrepareUpdate(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
prep: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetRecordPosition(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
out recpos: JET_RECPOS; // _bcount( cbRecpos )
|
||
|
cbRecpos: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGotoPosition(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
const recpos: JET_RECPOS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetCursorInfo(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetDupCursor(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
out duptableid: JET_TABLEID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetCurrentIndex( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PSTR; // _bcount( ccbIndexName )
|
||
|
ccbIndexName: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetCurrentIndexA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PSTR; // _bcount( ccbIndexName )
|
||
|
ccbIndexName: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetCurrentIndexW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PWSTR; // _bcount( ccbIndexName )
|
||
|
ccbIndexName: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetCurrentIndex( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PWSTR; // _bcount( ccbIndexName )
|
||
|
ccbIndexName: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetCurrentIndex( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PSTR; // _bcount( ccbIndexName )
|
||
|
ccbIndexName: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndexA(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndexW(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex2( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndex2A(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndex2W(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex2( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex2( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex3( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndex3A(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndex3W(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex3( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex3( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex4( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pindexid: PJET_INDEXID;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndex4A(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pindexid: PJET_INDEXID;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndex4W(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
pindexid: PJET_INDEXID;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex4( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCWSTR;
|
||
|
pindexid: PJET_INDEXID;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex4( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szIndexName: JET_PCSTR;
|
||
|
pindexid: PJET_INDEXID;
|
||
|
grbit: JET_GRBIT;
|
||
|
itagSequence: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetMove(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRow: long;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetLock(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetMakeKey(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvData: Pointer; // _bcount( cbData )
|
||
|
cbData: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetSeek(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
function JetPrereadKeys( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
rgpvKeys: PtrPointer; // __ecount(ckeys)
|
||
|
rgcbKeys: PCardinal; // __ecount(ckeys)
|
||
|
ckeys: long;
|
||
|
out ckeysPreread: long;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetBookmark( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvBookmark: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetGetSecondaryIndexBookmark( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvSecondaryKey: Pointer; // _bcount_part( cbSecondaryKeyMax, *pcbSecondaryKeyActual )
|
||
|
cbSecondaryKeyMax: Cardinal;
|
||
|
pcbSecondaryKeyActual: PCardinal;
|
||
|
pvPrimaryBookmark: Pointer; // _bcount_part( cbPrimaryBookmarkMax, *pcbPrimaryKeyActual )
|
||
|
cbPrimaryBookmarkMax: Cardinal;
|
||
|
pcbPrimaryKeyActual: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCompact( sesid: JET_SESID;
|
||
|
szDatabaseSrc: JET_PCSTR;
|
||
|
szDatabaseDest: JET_PCSTR;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
pconvert: PJET_CONVERT_A;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCompactA(sesid: JET_SESID;
|
||
|
szDatabaseSrc: JET_PCSTR;
|
||
|
szDatabaseDest: JET_PCSTR;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
pconvert: PJET_CONVERT_A;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCompactW(sesid: JET_SESID;
|
||
|
szDatabaseSrc: JET_PCWSTR;
|
||
|
szDatabaseDest: JET_PCWSTR;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
pconvert: PJET_CONVERT_W;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCompact( sesid: JET_SESID;
|
||
|
szDatabaseSrc: JET_PCWSTR;
|
||
|
szDatabaseDest: JET_PCWSTR;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
pconvert: PJET_CONVERT_W;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetCompact( sesid: JET_SESID;
|
||
|
szDatabaseSrc: JET_PCSTR;
|
||
|
szDatabaseDest: JET_PCSTR;
|
||
|
pfnStatus: JET_PFNSTATUS;
|
||
|
pconvert: PJET_CONVERT_A;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDefragment( sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDefragmentA(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDefragmentW(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDefragment( sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDefragment( sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDefragment2( sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDefragment2A(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDefragment2W(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDefragment2( sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDefragment2( sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDefragment3( sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCSTR;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
pvContext: Pointer;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDefragment3A(sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCSTR;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
pvContext: Pointer;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDefragment3W(sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCWSTR;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
pvContext: Pointer;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDefragment3( sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCWSTR;
|
||
|
szTableName: JET_PCWSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
pvContext: Pointer;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetDefragment3( sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCSTR;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pcPasses: PCardinal;
|
||
|
pcSeconds: PCardinal;
|
||
|
callback: JET_CALLBACK;
|
||
|
pvContext: Pointer;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetDatabaseSize( sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCSTR;
|
||
|
cpg: Cardinal;
|
||
|
out cpgReal: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetDatabaseSizeA(sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCSTR;
|
||
|
cpg: Cardinal;
|
||
|
out cpgReal: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetDatabaseSizeW(sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCWSTR;
|
||
|
cpg: Cardinal;
|
||
|
out cpgReal: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetDatabaseSize( sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCWSTR;
|
||
|
cpg: Cardinal;
|
||
|
out cpgReal: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetSetDatabaseSize( sesid: JET_SESID;
|
||
|
szDatabaseName: JET_PCSTR;
|
||
|
cpg: Cardinal;
|
||
|
out cpgReal: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetGrowDatabase(sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
cpg: Cardinal;
|
||
|
pcpgReal: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetSetSessionContext(sesid: JET_SESID;
|
||
|
ulContext: Pointer
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetResetSessionContext(sesid: JET_SESID): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGotoBookmark(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvBookmark: Pointer; // _bcount( cbBookmark )
|
||
|
cbBookmark: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetGotoSecondaryIndexBookmark(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvSecondaryKey: Pointer; // _bcount( cbSecondaryKey )
|
||
|
cbSecondaryKey: Cardinal;
|
||
|
pvPrimaryBookmark: Pointer; // _bcount( cbPrimaryBookmark )
|
||
|
cbPrimaryBookmark: Cardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetIntersectIndexes(sesid: JET_SESID;
|
||
|
prgindexrange: PJET_INDEXRANGE; // __ecount( cindexrange )
|
||
|
cindexrange: Cardinal;
|
||
|
var recordlist: JET_RECORDLIST;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetComputeStats(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetOpenTempTable(sesid: JET_SESID;
|
||
|
const rgcolumndef: JET_COLUMNDEF; // __ecount( ccolumn )
|
||
|
ccolumn: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID;
|
||
|
out rgcolumnid: JET_COLUMNID // _ecount( ccolumn )
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetOpenTempTable2(sesid: JET_SESID;
|
||
|
const rgcolumndef: JET_COLUMNDEF; // __ecount( ccolumn )
|
||
|
lcid: Cardinal;
|
||
|
ccolumn: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID;
|
||
|
out rgcolumnid: JET_COLUMNID // _ecount( ccolumn )
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetOpenTempTable3(sesid: JET_SESID;
|
||
|
const rgcolumndef: JET_COLUMNDEF; // __ecount( ccolumn )
|
||
|
ccolumn: Cardinal;
|
||
|
pidxunicode: PJET_UNICODEINDEX;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID;
|
||
|
out rgcolumnid: JET_COLUMNID // _ecount( ccolumn )
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOpenTemporaryTable(sesid: JET_SESID;
|
||
|
const opentemporarytable: JET_OPENTEMPORARYTABLE
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetBackup( szBackupPath: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetBackupA(szBackupPath: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetBackupW(szBackupPath: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetBackup( szBackupPath: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetBackup( szBackupPath: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetBackupInstance( instance: JET_INSTANCE;
|
||
|
szBackupPath: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetBackupInstanceA(instance: JET_INSTANCE;
|
||
|
szBackupPath: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetBackupInstanceW(instance: JET_INSTANCE;
|
||
|
szBackupPath: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetBackupInstance( instance: JET_INSTANCE;
|
||
|
szBackupPath: JET_PCWSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetBackupInstance( instance: JET_INSTANCE;
|
||
|
szBackupPath: JET_PCSTR;
|
||
|
grbit: JET_GRBIT;
|
||
|
pfnStatus: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRestore( sz : JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRestoreA(sz : JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRestoreW(sz : JET_PCWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRestore( sz : JET_PCWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetRestore( sz : JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRestore2( sz: JET_PCSTR;
|
||
|
szDest :JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRestore2A(sz: JET_PCSTR;
|
||
|
szDest :JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRestore2W(sz: JET_PCWSTR;
|
||
|
szDest: JET_PCWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRestore2( sz: JET_PCWSTR;
|
||
|
szDest: JET_PCWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetRestore2( sz: JET_PCSTR;
|
||
|
szDest :JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRestoreInstance( instance: JET_INSTANCE;
|
||
|
sz: JET_PCSTR;
|
||
|
szDest: JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRestoreInstanceA(instance: JET_INSTANCE;
|
||
|
sz: JET_PCSTR;
|
||
|
szDest: JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRestoreInstanceW(instance: JET_INSTANCE;
|
||
|
sz: JET_PCWSTR;
|
||
|
szDest: JET_PCWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRestoreInstance( instance: JET_INSTANCE;
|
||
|
sz: JET_PCWSTR;
|
||
|
szDest: JET_PCWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetRestoreInstance( instance: JET_INSTANCE;
|
||
|
sz: JET_PCSTR;
|
||
|
szDest: JET_PCSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetIndexRange(sesid: JET_SESID;
|
||
|
tableidSrc: JET_TABLEID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetIndexRecordCount(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
out crec: Cardinal;
|
||
|
crecMax: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetRetrieveKey( sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pvData: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetBeginExternalBackup( grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetBeginExternalBackupInstance( instance: JET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetAttachInfo( pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetAttachInfoA( {$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetAttachInfoW( szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetAttachInfo( szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetAttachInfo( {$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetAttachInfoInstance(instance: JET_INSTANCE;
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetAttachInfoInstanceA( instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetAttachInfoInstanceW(instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetAttachInfoInstance(instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetAttachInfoInstance( instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenFile( szFileName: JET_PCSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenFileA(szFileName: JET_PCSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenFileW(szFileName: JET_PCWSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenFile( szFileName: JET_PCWSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetOpenFile( szFileName: JET_PCSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenFileInstance( instance: JET_INSTANCE;
|
||
|
szFileName: JET_PCSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenFileInstanceA(instance: JET_INSTANCE;
|
||
|
szFileName: JET_PCSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenFileInstanceW(instance: JET_INSTANCE;
|
||
|
szFileName: JET_PCWSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenFileInstance( instance: JET_INSTANCE;
|
||
|
szFileName: JET_PCWSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetOpenFileInstance( instance: JET_INSTANCE;
|
||
|
szFileName: JET_PCSTR;
|
||
|
out hfFile: JET_HANDLE;
|
||
|
pulFileSizeLow: PCardinal;
|
||
|
pulFileSizeHigh: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetReadFile( hfFile: JET_HANDLE;
|
||
|
pv: Pointer; // _bcount_part( cb, *pcbActual )
|
||
|
cb: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetReadFileInstance( instance: JET_INSTANCE;
|
||
|
hfFile: JET_HANDLE;
|
||
|
pv: Pointer; // _bcount_part( cb, *pcbActual )
|
||
|
cb: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetCloseFile(hfFile: JET_HANDLE): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetCloseFileInstance(instance: JET_INSTANCE;
|
||
|
hfFile: JET_HANDLE
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetLogInfo(pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetLogInfoA( {$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetLogInfoW(szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetLogInfo(szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetLogInfo( {$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetLogInfoInstance( instance: JET_INSTANCE;
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetLogInfoInstanceA(instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetLogInfoInstanceW(instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetLogInfoInstance( instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetLogInfoInstance( instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
const
|
||
|
JET_BASE_NAME_LENGTH = 3;
|
||
|
|
||
|
type
|
||
|
JET_LOGINFO_A = record
|
||
|
cbSize: Cardinal;
|
||
|
ulGenLow: Cardinal;
|
||
|
ulGenHigh: Cardinal;
|
||
|
szBaseName: array[0..JET_BASE_NAME_LENGTH] of AnsiChar;
|
||
|
end;
|
||
|
PJET_LOGINFO_A = ^JET_LOGINFO_A;
|
||
|
|
||
|
JET_LOGINFO_W = record
|
||
|
cbSize: Cardinal;
|
||
|
ulGenLow: Cardinal;
|
||
|
ulGenHigh: Cardinal;
|
||
|
szBaseName: array[0..JET_BASE_NAME_LENGTH] of WideChar;
|
||
|
end;
|
||
|
PJET_LOGINFO_W = ^JET_LOGINFO_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_LOGINFO = JET_LOGINFO_W;
|
||
|
{$ELSE}
|
||
|
JET_LOGINFO = JET_LOGINFO_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetLogInfoInstance2( instance: JET_INSTANCE;
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
pLogInfo: PJET_LOGINFO_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetLogInfoInstance2A(instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
pLogInfo: PJET_LOGINFO_A
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetLogInfoInstance2W(instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
pLogInfo: PJET_LOGINFO_W
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetLogInfoInstance2( instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
pLogInfo: PJET_LOGINFO_W
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetLogInfoInstance2( instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal;
|
||
|
pLogInfo: PJET_LOGINFO_A
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetTruncateLogInfoInstance( instance: JET_INSTANCE;
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTruncateLogInfoInstanceA(instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetTruncateLogInfoInstanceW(instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTruncateLogInfoInstance( instance: JET_INSTANCE;
|
||
|
szz: JET_PWSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetTruncateLogInfoInstance( instance: JET_INSTANCE;
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
pv: Pointer; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$ELSE}
|
||
|
szz: JET_PSTR; // _bcount_part( cbMax, *pcbActual )
|
||
|
{$IFEND}
|
||
|
cbMax: Cardinal;
|
||
|
pcbActual: PCardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetTruncateLog: JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetTruncateLogInstance(instance: JET_INSTANCE): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetEndExternalBackup: JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetEndExternalBackupInstance(instance: JET_INSTANCE): JET_ERR; stdcall;
|
||
|
|
||
|
function JetEndExternalBackupInstance2(instance: JET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetExternalRestore( szCheckpointFilePath: JET_PSTR;
|
||
|
szLogPath: JET_PSTR;
|
||
|
rgrstmap: PJET_RSTMAP_A; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PSTR;
|
||
|
genLow: long;
|
||
|
genHigh: long;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetExternalRestoreA( szCheckpointFilePath: JET_PSTR;
|
||
|
szLogPath: JET_PSTR;
|
||
|
rgrstmap: PJET_RSTMAP_A; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PSTR;
|
||
|
genLow: long;
|
||
|
genHigh: long;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetExternalRestoreW( szCheckpointFilePath: JET_PWSTR;
|
||
|
szLogPath: JET_PWSTR;
|
||
|
rgrstmap: PJET_RSTMAP_W; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PWSTR;
|
||
|
genLow: long;
|
||
|
genHigh: long;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetExternalRestore( szCheckpointFilePath: JET_PWSTR;
|
||
|
szLogPath: JET_PWSTR;
|
||
|
rgrstmap: PJET_RSTMAP_W; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PWSTR;
|
||
|
genLow: long;
|
||
|
genHigh: long;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetExternalRestore( szCheckpointFilePath: JET_PSTR;
|
||
|
szLogPath: JET_PSTR;
|
||
|
rgrstmap: PJET_RSTMAP_A; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PSTR;
|
||
|
genLow: long;
|
||
|
genHigh: long;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetExternalRestore2( szCheckpointFilePath: JET_PSTR;
|
||
|
szLogPath: JET_PSTR;
|
||
|
rgrstmap: PJET_RSTMAP_A; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PSTR;
|
||
|
var LogInfo: JET_LOGINFO_A;
|
||
|
szTargetInstanceName: JET_PSTR;
|
||
|
szTargetInstanceLogPath: JET_PSTR;
|
||
|
szTargetInstanceCheckpointPath: JET_PSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetExternalRestore2A( szCheckpointFilePath: JET_PSTR;
|
||
|
szLogPath: JET_PSTR;
|
||
|
rgrstmap: PJET_RSTMAP_A; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PSTR;
|
||
|
var LogInfo: JET_LOGINFO_A;
|
||
|
szTargetInstanceName: JET_PSTR;
|
||
|
szTargetInstanceLogPath: JET_PSTR;
|
||
|
szTargetInstanceCheckpointPath: JET_PSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetExternalRestore2W( szCheckpointFilePath: JET_PWSTR;
|
||
|
szLogPath: JET_PWSTR;
|
||
|
rgrstmap: PJET_RSTMAP_W; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PWSTR;
|
||
|
var LogInfo: JET_LOGINFO_W;
|
||
|
szTargetInstanceName: JET_PWSTR;
|
||
|
szTargetInstanceLogPath: JET_PWSTR;
|
||
|
szTargetInstanceCheckpointPath: JET_PWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetExternalRestore2( szCheckpointFilePath: JET_PWSTR;
|
||
|
szLogPath: JET_PWSTR;
|
||
|
rgrstmap: PJET_RSTMAP_W; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PWSTR;
|
||
|
var LogInfo: JET_LOGINFO_W;
|
||
|
szTargetInstanceName: JET_PWSTR;
|
||
|
szTargetInstanceLogPath: JET_PWSTR;
|
||
|
szTargetInstanceCheckpointPath: JET_PWSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetExternalRestore2( szCheckpointFilePath: JET_PSTR;
|
||
|
szLogPath: JET_PSTR;
|
||
|
rgrstmap: PJET_RSTMAP_A; // __ecount( crstfilemap )
|
||
|
crstfilemap: long;
|
||
|
szBackupLogPath: JET_PSTR;
|
||
|
var LogInfo: JET_LOGINFO_A;
|
||
|
szTargetInstanceName: JET_PSTR;
|
||
|
szTargetInstanceLogPath: JET_PSTR;
|
||
|
szTargetInstanceCheckpointPath: JET_PSTR;
|
||
|
pfn: JET_PFNSTATUS
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRegisterCallback(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cbtyp: JET_CBTYP;
|
||
|
pCallback: JET_CALLBACK;
|
||
|
pvContext: Pointer;
|
||
|
out hCallbackId: JET_HANDLE
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
|
||
|
function JetUnregisterCallback(sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cbtyp: JET_CBTYP;
|
||
|
hCallbackId: JET_HANDLE
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
type
|
||
|
_JET_INSTANCE_INFO_A = record
|
||
|
hInstanceId : JET_INSTANCE;
|
||
|
szInstanceName : PAnsiChar;
|
||
|
cDatabases : Pointer;
|
||
|
szDatabaseFileName : PPAnsiChar;
|
||
|
szDatabaseDisplayName: PPAnsiChar;
|
||
|
szDatabaseSLVFileName: PPAnsiChar;
|
||
|
end;
|
||
|
JET_INSTANCE_INFO_A = _JET_INSTANCE_INFO_A;
|
||
|
PJET_INSTANCE_INFO_A = ^JET_INSTANCE_INFO_A;
|
||
|
|
||
|
_JET_INSTANCE_INFO_W = record
|
||
|
hInstanceId : JET_INSTANCE;
|
||
|
szInstanceName : PWideChar;
|
||
|
cDatabases : Pointer;
|
||
|
szDatabaseFileName : PPWideChar;
|
||
|
szDatabaseDisplayName: PPWideChar;
|
||
|
szDatabaseSLVFileName: PPWideChar;
|
||
|
end;
|
||
|
JET_INSTANCE_INFO_W = _JET_INSTANCE_INFO_W;
|
||
|
PJET_INSTANCE_INFO_W = ^JET_INSTANCE_INFO_W;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
JET_INSTANCE_INFO = JET_INSTANCE_INFO_W;
|
||
|
{$ELSE}
|
||
|
JET_INSTANCE_INFO = JET_INSTANCE_INFO_A;
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetInstanceInfo(out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A //__deref_ecount( *pcInstanceInfo )
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetInstanceInfoA(out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A //__deref_ecount( *pcInstanceInfo )
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetInstanceInfoW(out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_W //__deref_ecount( *pcInstanceInfo )
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetInstanceInfo(out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_W //__deref_ecount( *pcInstanceInfo )
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetGetInstanceInfo(out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A //__deref_ecount( *pcInstanceInfo )
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetFreeBuffer(pbBuf: PAnsiChar): JET_ERR; stdcall;
|
||
|
|
||
|
function JetSetLS(sesid : JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
ls : JET_LS;
|
||
|
grbit : JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetGetLS(sesid : JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
out ls : JET_LS;
|
||
|
grbit : JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
type
|
||
|
JET_OSSNAPID = Pointer; { Snapshot Session Identifier }
|
||
|
|
||
|
function JetOSSnapshotPrepare(out snapId: JET_OSSNAPID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOSSnapshotPrepareInstance(snapId : JET_OSSNAPID;
|
||
|
instance: JET_INSTANCE;
|
||
|
grbit : JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOSSnapshotFreeze(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo : Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOSSnapshotFreezeA(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo : Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOSSnapshotFreezeW(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo : Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_W; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOSSnapshotFreeze(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo : Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_W; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetOSSnapshotFreeze(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo : Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetOSSnapshotThaw(snapId: JET_OSSNAPID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
function JetOSSnapshotAbort(snapId: JET_OSSNAPID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOSSnapshotTruncateLog(snapId: JET_OSSNAPID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
function JetOSSnapshotTruncateLogInstance(snapId: JET_OSSNAPID;
|
||
|
instance: JET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
JetOSSnapshotGetFreezeInfoA = JetOSSnapshotGetFreezeInfo;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOSSnapshotGetFreezeInfoA(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOSSnapshotGetFreezeInfoW(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_W; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOSSnapshotGetFreezeInfo(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_W; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ELSE}
|
||
|
function JetOSSnapshotGetFreezeInfo(snapId: JET_OSSNAPID;
|
||
|
out cInstanceInfo: Cardinal;
|
||
|
out paInstanceInfo: PJET_INSTANCE_INFO_A; // __deref_ecount( *pcInstanceInfo )
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOSSnapshotEnd(snapId: JET_OSSNAPID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
|
||
|
const
|
||
|
// Options for JetConfigureProcessForCrashDump
|
||
|
JET_bitDumpMinimum = $00000001;
|
||
|
// dump minimum includes cache minimum
|
||
|
JET_bitDumpMaximum = $00000002;
|
||
|
// dump maximum includes dump minimum
|
||
|
// dump maximum includes cache maximum
|
||
|
JET_bitDumpCacheMinimum = $00000004;
|
||
|
// cache minimum includes pages that are latched
|
||
|
// cache minimum includes pages that are used for memory
|
||
|
// cache minimum includes pages that are flagged with errors
|
||
|
JET_bitDumpCacheMaximum = $00000008;
|
||
|
// cache maximum includes cache minim
|
||
|
// cache maximum includes the entire cache image
|
||
|
JET_bitDumpCacheIncludeDirtyPages = $00000010;
|
||
|
// dump includes pages that are modified
|
||
|
JET_bitDumpCacheIncludeCachedPages = $00000020;
|
||
|
// dump includes pages that contain valid data
|
||
|
JET_bitDumpCacheIncludeCorruptedPages = $00000040;
|
||
|
// dump includes pages that are corrupted (expensive to compute)
|
||
|
|
||
|
|
||
|
function JetConfigureProcessForCrashDump(grbit: JET_GRBIT): JET_ERR; stdcall;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$ENDIF}
|
||
|
|
||
|
implementation
|
||
|
|
||
|
const
|
||
|
ESENT_DLL = 'esent.dll';
|
||
|
|
||
|
{$IFDEF DYNAMIC_LINK}
|
||
|
|
||
|
procedure GetProcedureAddress(var P: Pointer; const ModuleName, ProcName: string);
|
||
|
var
|
||
|
ModuleHandle: HMODULE;
|
||
|
begin
|
||
|
if not Assigned(P) then begin
|
||
|
ModuleHandle:=GetModuleHandle(PChar(ModuleName));
|
||
|
if ModuleHandle=0 then begin
|
||
|
ModuleHandle:=LoadLibrary(PChar(ModuleName));
|
||
|
if ModuleHandle=0 then
|
||
|
Exit;
|
||
|
end;
|
||
|
P:=GetProcAddress(ModuleHandle,PChar(ProcName));
|
||
|
if not Assigned(P) then
|
||
|
Exit;
|
||
|
end;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetGetDatabaseFileInfo = function (szDatabaseName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetGetDatabaseFileInfo: TJetGetDatabaseFileInfo;
|
||
|
|
||
|
function JetGetDatabaseFileInfo;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetGetDatabaseFileInfo),ESENT_DLL,'JetGetDatabaseFileInfo');
|
||
|
if Assigned(_JetGetDatabaseFileInfo) then
|
||
|
Result:=_JetGetDatabaseFileInfo(szDatabaseName,pvResult,cbMax,InfoLevel)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetInit = function (pinstance: PJET_INSTANCE): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetInit: TJetInit;
|
||
|
|
||
|
function JetInit;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetInit),ESENT_DLL,'JetInit');
|
||
|
if Assigned(_JetInit) then
|
||
|
Result:=_JetInit(pinstance)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetCreateInstance = function (out instance: JET_INSTANCE;
|
||
|
szInstanceName: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetCreateInstance: TJetCreateInstance;
|
||
|
|
||
|
function JetCreateInstance;
|
||
|
var
|
||
|
em: {$IFDEF RAD9PLUS}TArithmeticExceptionMask{$ELSE}TFPUExceptionMask{$ENDIF};
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetCreateInstance),ESENT_DLL,'JetCreateInstance');
|
||
|
// if you get "floating point invalid operation" on _JetCreateInstance call then you must call Set8087CW($027F); on the start of your app
|
||
|
em:=GetExceptionMask;
|
||
|
SetExceptionMask({$IFDEF RAD9PLUS}exAllArithmeticExceptions{$ELSE}[exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision]{$ENDIF});
|
||
|
if Assigned(_JetCreateInstance) then
|
||
|
Result:=_JetCreateInstance(instance,szInstanceName)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
SetExceptionMask(em);
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetTerm2 = function (instance: JET_INSTANCE;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetTerm2: TJetTerm2;
|
||
|
|
||
|
function JetTerm2;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetTerm2),ESENT_DLL,'JetTerm2');
|
||
|
if Assigned(_JetTerm2) then
|
||
|
Result:=_JetTerm2(instance,grbit)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetSetSystemParameter = function (pinstance: PJET_INSTANCE;
|
||
|
sesid : JET_SESID;
|
||
|
paramid : Cardinal;
|
||
|
lParam : Pointer;
|
||
|
szParam : JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetSetSystemParameter: TJetSetSystemParameter;
|
||
|
|
||
|
function JetSetSystemParameter;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetSetSystemParameter),ESENT_DLL,'JetSetSystemParameter');
|
||
|
if Assigned(_JetSetSystemParameter) then
|
||
|
Result:=_JetSetSystemParameter(pinstance,sesid,paramid,lParam,szparam)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetBeginSession = function (instance : JET_INSTANCE;
|
||
|
out psesid: JET_SESID;
|
||
|
szUserName: JET_PCSTR;
|
||
|
szPassword: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetBeginSession: TJetBeginSession;
|
||
|
|
||
|
function JetBeginSession;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetBeginSession),ESENT_DLL,'JetBeginSession');
|
||
|
if Assigned(_JetBeginSession) then
|
||
|
Result:=_JetBeginSession(instance,psesid,szUserName,szPassword)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetGetVersion = function (sesid: JET_SESID;
|
||
|
out wVersion: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetGetVersion: TJetGetVersion;
|
||
|
|
||
|
function JetGetVersion;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetGetVersion),ESENT_DLL,'JetGetVersion');
|
||
|
if Assigned(_JetGetVersion) then
|
||
|
Result:=_JetGetVersion(sesid,wVersion)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetAttachDatabase = function (sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetAttachDatabase: TJetAttachDatabase;
|
||
|
|
||
|
function JetAttachDatabase;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetAttachDatabase),ESENT_DLL,'JetAttachDatabase');
|
||
|
if Assigned(_JetAttachDatabase) then
|
||
|
Result:=_JetAttachDatabase(sesid,szFilename,grbit)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetOpenDatabase = function (sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR;
|
||
|
szConnect: JET_PCSTR;
|
||
|
out dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetOpenDatabase: TJetOpenDatabase;
|
||
|
|
||
|
function JetOpenDatabase;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetOpenDatabase),ESENT_DLL,'JetOpenDatabase');
|
||
|
if Assigned(_JetOpenDatabase) then
|
||
|
Result:=_JetOpenDatabase(sesid,szFilename,szConnect,dbid,grbit)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetOpenTable = function (sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
szTableName: JET_PCSTR;
|
||
|
pvParameters: Pointer; // _bcount( cbParameters )
|
||
|
cbParameters: Cardinal;
|
||
|
grbit: JET_GRBIT;
|
||
|
out tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetOpenTable: TJetOpenTable;
|
||
|
|
||
|
function JetOpenTable;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetOpenTable),ESENT_DLL,'JetOpenTable');
|
||
|
if Assigned(_JetOpenTable) then
|
||
|
Result:=_JetOpenTable(sesid,dbid,szTableName,pvParameters,cbParameters,grbit,tableid)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetMove = function (sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
cRow: long;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
|
||
|
var
|
||
|
_JetMove: TJetMove;
|
||
|
|
||
|
function JetMove;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetMove),ESENT_DLL,'JetMove');
|
||
|
if Assigned(_JetMove) then
|
||
|
Result:=_JetMove(sesid,tableid,cRow,grbit)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetGetTableColumnInfo = function (sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
szColumnName: JET_PCSTR;
|
||
|
pvResult: Pointer; // _bcount( cbMax )
|
||
|
cbMax: Cardinal;
|
||
|
InfoLevel: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetGetTableColumnInfo: TJetGetTableColumnInfo;
|
||
|
|
||
|
function JetGetTableColumnInfo;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetGetTableColumnInfo),ESENT_DLL,'JetGetTableColumnInfo');
|
||
|
if Assigned(_JetGetTableColumnInfo) then
|
||
|
Result:=_JetGetTableColumnInfo(sesid,tableid,szColumnName,pvResult,cbMax,InfoLevel)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetRetrieveColumns = function (sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID;
|
||
|
pretrievecolumn: PJET_RETRIEVECOLUMN; // _ecount( cretrievecolumn )
|
||
|
cretrievecolumn: Cardinal
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetRetrieveColumns: TJetRetrieveColumns;
|
||
|
|
||
|
function JetRetrieveColumns;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetRetrieveColumns),ESENT_DLL,'JetRetrieveColumns');
|
||
|
if Assigned(_JetRetrieveColumns) then
|
||
|
Result:=_JetRetrieveColumns(sesid,tableid,pretrievecolumn,cretrievecolumn)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetCloseTable = function (sesid: JET_SESID;
|
||
|
tableid: JET_TABLEID
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetCloseTable: TJetCloseTable;
|
||
|
|
||
|
function JetCloseTable;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetCloseTable),ESENT_DLL,'JetCloseTable');
|
||
|
if Assigned(_JetCloseTable) then
|
||
|
Result:=_JetCloseTable(sesid,tableid)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetCloseDatabase = function (sesid: JET_SESID;
|
||
|
dbid: JET_DBID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetCloseDatabase: TJetCloseDatabase;
|
||
|
|
||
|
function JetCloseDatabase;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetCloseDatabase),ESENT_DLL,'JetCloseDatabase');
|
||
|
if Assigned(_JetCloseDatabase) then
|
||
|
Result:=_JetCloseDatabase(sesid,dbid,grbit)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetDetachDatabase = function (sesid: JET_SESID;
|
||
|
szFilename: JET_PCSTR
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetDetachDatabase: TJetDetachDatabase;
|
||
|
|
||
|
function JetDetachDatabase;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetDetachDatabase),ESENT_DLL,'JetDetachDatabase');
|
||
|
if Assigned(_JetDetachDatabase) then
|
||
|
Result:=_JetDetachDatabase(sesid,szFilename)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
type
|
||
|
TJetEndSession = function (sesid: JET_SESID;
|
||
|
grbit: JET_GRBIT
|
||
|
): JET_ERR; stdcall;
|
||
|
var
|
||
|
_JetEndSession: TJetEndSession;
|
||
|
|
||
|
function JetEndSession;
|
||
|
begin
|
||
|
GetProcedureAddress(Pointer(@_JetEndSession),ESENT_DLL,'JetEndSession');
|
||
|
if Assigned(_JetEndSession) then
|
||
|
Result:=_JetEndSession(sesid,grbit)
|
||
|
else
|
||
|
Result:=JET_errFeatureNotAvailable;
|
||
|
end;
|
||
|
|
||
|
{$ELSE}
|
||
|
|
||
|
function JetInit; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetInit2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
JetInit3A = JetInit3;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetInit3A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetInit3W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetInit3; external ESENT_DLL name 'JetInit3W';
|
||
|
{$ELSE}
|
||
|
function JetInit3; external ESENT_DLL name 'JetInit3A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateInstanceA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetCreateInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateInstance; external ESENT_DLL name 'JetCreateInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetCreateInstance; external ESENT_DLL name 'JetCreateInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateInstance2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateInstance2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateInstance2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateInstance2; external ESENT_DLL name 'JetCreateInstance2W';
|
||
|
{$ELSE}
|
||
|
function JetCreateInstance2; external ESENT_DLL name 'JetCreateInstance2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetInstanceMiscInfo; external ESENT_DLL;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetTerm; external ESENT_DLL;
|
||
|
function JetTerm2; external ESENT_DLL;
|
||
|
function JetStopService; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetStopServiceInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetStopBackup; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetStopBackupInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetSystemParameter; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetSystemParameterA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetSystemParameterW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetSystemParameter; external ESENT_DLL name 'JetSetSystemParameterW';
|
||
|
{$ELSE}
|
||
|
function JetSetSystemParameter; external ESENT_DLL name 'JetSetSystemParameterA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetSystemParameter; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetSystemParameterA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetSystemParameterW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetSystemParameter; external ESENT_DLL name 'JetGetSystemParameterW';
|
||
|
{$ELSE}
|
||
|
function JetGetSystemParameter; external ESENT_DLL name 'JetGetSystemParameterA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetEnableMultiInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetEnableMultiInstanceA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetEnableMultiInstanceW; external ESENT_DLL;
|
||
|
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetEnableMultiInstance; external ESENT_DLL name 'JetEnableMultiInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetEnableMultiInstance; external ESENT_DLL name 'JetEnableMultiInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetGetThreadStats; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetBeginSession; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetBeginSessionA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetBeginSessionW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetBeginSession; external ESENT_DLL name 'JetBeginSessionW';
|
||
|
{$ELSE}
|
||
|
function JetBeginSession; external ESENT_DLL name 'JetBeginSessionA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDupSession; external ESENT_DLL;
|
||
|
function JetEndSession; external ESENT_DLL;
|
||
|
function JetGetVersion; external ESENT_DLL;
|
||
|
function JetIdle; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateDatabase; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateDatabaseA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateDatabaseW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateDatabase; external ESENT_DLL name 'JetCreateDatabaseW';
|
||
|
{$ELSE}
|
||
|
function JetCreateDatabase; external ESENT_DLL name 'JetCreateDatabaseA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateDatabase2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateDatabase2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateDatabase2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateDatabase2; external ESENT_DLL name 'JetCreateDatabase2W';
|
||
|
{$ELSE}
|
||
|
function JetCreateDatabase2; external ESENT_DLL name 'JetCreateDatabase2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetAttachDatabase; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetAttachDatabaseA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetAttachDatabaseW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetAttachDatabase; external ESENT_DLL name 'JetAttachDatabaseW';
|
||
|
{$ELSE}
|
||
|
function JetAttachDatabase; external ESENT_DLL name 'JetAttachDatabaseA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetAttachDatabase2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetAttachDatabase2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetAttachDatabase2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetAttachDatabase2; external ESENT_DLL name 'JetAttachDatabase2W';
|
||
|
{$ELSE}
|
||
|
function JetAttachDatabase2; external ESENT_DLL name 'JetAttachDatabase2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDetachDatabase; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDetachDatabaseA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDetachDatabaseW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDetachDatabase; external ESENT_DLL name 'JetDetachDatabaseW';
|
||
|
{$ELSE}
|
||
|
function JetDetachDatabase; external ESENT_DLL name 'JetDetachDatabaseA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDetachDatabase2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDetachDatabase2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDetachDatabase2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDetachDatabase2; external ESENT_DLL name 'JetDetachDatabase2W';
|
||
|
{$ELSE}
|
||
|
function JetDetachDatabase2; external ESENT_DLL name 'JetDetachDatabase2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetObjectInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetObjectInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetObjectInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetObjectInfo; external ESENT_DLL name 'JetGetObjectInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetObjectInfo; external ESENT_DLL name 'JetGetObjectInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTableInfo; external ESENT_DLL name 'JetGetTableInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetTableInfo; external ESENT_DLL name 'JetGetTableInfoA';
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateTable; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateTableA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateTableW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTable; external ESENT_DLL name 'JetCreateTableW';
|
||
|
{$ELSE}
|
||
|
function JetCreateTable; external ESENT_DLL name 'JetCreateTableA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateTableColumnIndex; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateTableColumnIndexA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateTableColumnIndexW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTableColumnIndex; external ESENT_DLL name 'JetCreateTableColumnIndexW';
|
||
|
{$ELSE}
|
||
|
function JetCreateTableColumnIndex; external ESENT_DLL name 'JetCreateTableColumnIndexA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateTableColumnIndex2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateTableColumnIndex2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateTableColumnIndex2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTableColumnIndex2; external ESENT_DLL name 'JetCreateTableColumnIndex2W';
|
||
|
{$ELSE}
|
||
|
function JetCreateTableColumnIndex2; external ESENT_DLL name 'JetCreateTableColumnIndex2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
|
||
|
function JetCreateTableColumnIndex3A; external ESENT_DLL;
|
||
|
function JetCreateTableColumnIndex3W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateTableColumnIndex3; external ESENT_DLL name 'JetCreateTableColumnIndex3W';
|
||
|
{$ELSE}
|
||
|
function JetCreateTableColumnIndex3; external ESENT_DLL name 'JetCreateTableColumnIndex3A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteTable; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteTableA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteTableW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteTable; external ESENT_DLL name 'JetDeleteTableW';
|
||
|
{$ELSE}
|
||
|
function JetDeleteTable; external ESENT_DLL name 'JetDeleteTableA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRenameTable; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRenameTableA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRenameTableW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRenameTable; external ESENT_DLL name 'JetRenameTableW';
|
||
|
{$ELSE}
|
||
|
function JetRenameTable; external ESENT_DLL name 'JetRenameTableA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetTableColumnInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTableColumnInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetTableColumnInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTableColumnInfo; external ESENT_DLL name 'JetGetTableColumnInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetTableColumnInfo; external ESENT_DLL name 'JetGetTableColumnInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetColumnInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetColumnInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetColumnInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetColumnInfo; external ESENT_DLL name 'JetGetColumnInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetColumnInfo; external ESENT_DLL name 'JetGetColumnInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetAddColumn; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetAddColumnA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetAddColumnW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetAddColumn; external ESENT_DLL name 'JetAddColumnW';
|
||
|
{$ELSE}
|
||
|
function JetAddColumn; external ESENT_DLL name 'JetAddColumnA';
|
||
|
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteColumn; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteColumnA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteColumnW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteColumn; external ESENT_DLL name 'JetDeleteColumnW';
|
||
|
{$ELSE}
|
||
|
function JetDeleteColumn; external ESENT_DLL name 'JetDeleteColumnA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteColumn2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteColumn2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteColumn2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteColumn2; external ESENT_DLL name 'JetDeleteColumn2W';
|
||
|
{$ELSE}
|
||
|
function JetDeleteColumn2; external ESENT_DLL name 'JetDeleteColumn2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRenameColumn; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRenameColumnA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRenameColumnW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRenameColumn; external ESENT_DLL name 'JetRenameColumnW';
|
||
|
{$ELSE}
|
||
|
function JetRenameColumn; external ESENT_DLL name 'JetRenameColumnA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetColumnDefaultValue; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetColumnDefaultValueA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetColumnDefaultValueW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetColumnDefaultValue; external ESENT_DLL name 'JetSetColumnDefaultValueW';
|
||
|
{$ELSE}
|
||
|
function JetSetColumnDefaultValue; external ESENT_DLL name 'JetSetColumnDefaultValueA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetTableIndexInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTableIndexInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetTableIndexInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTableIndexInfo; external ESENT_DLL name 'JetGetTableIndexInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetTableIndexInfo; external ESENT_DLL name 'JetGetTableIndexInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetIndexInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetIndexInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetIndexInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetIndexInfo; external ESENT_DLL name 'JetGetIndexInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetIndexInfo; external ESENT_DLL name 'JetGetIndexInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateIndex; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateIndexA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateIndexW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateIndex; external ESENT_DLL name 'JetCreateIndexW';
|
||
|
{$ELSE}
|
||
|
function JetCreateIndex; external ESENT_DLL name 'JetCreateIndexA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCreateIndex2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCreateIndex2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCreateIndex2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateIndex2; external ESENT_DLL name 'JetCreateIndex2W';
|
||
|
{$ELSE}
|
||
|
function JetCreateIndex2; external ESENT_DLL name 'JetCreateIndex2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
|
||
|
function JetCreateIndex3A; external ESENT_DLL;
|
||
|
|
||
|
function JetCreateIndex3W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCreateIndex3; external ESENT_DLL name 'JetCreateIndex3W';
|
||
|
{$ELSE}
|
||
|
function JetCreateIndex3; external ESENT_DLL name 'JetCreateIndex3A';
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDeleteIndex; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDeleteIndexA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDeleteIndexW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDeleteIndex; external ESENT_DLL name 'JetDeleteIndexW';
|
||
|
{$ELSE}
|
||
|
function JetDeleteIndex; external ESENT_DLL name 'JetDeleteIndexA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetBeginTransaction; external ESENT_DLL;
|
||
|
function JetBeginTransaction2; external ESENT_DLL;
|
||
|
function JetCommitTransaction; external ESENT_DLL;
|
||
|
function JetRollback; external ESENT_DLL;
|
||
|
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetDatabaseInfo; external ESENT_DLL name 'JetGetDatabaseInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetDatabaseInfo; external ESENT_DLL name 'JetGetDatabaseInfoA';
|
||
|
{$ENDIF}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetDatabaseFileInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetDatabaseFileInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetDatabaseFileInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetDatabaseFileInfo; external ESENT_DLL name 'JetGetDatabaseFileInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetDatabaseFileInfo; external ESENT_DLL name 'JetGetDatabaseFileInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenDatabase; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenDatabaseA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenDatabaseW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenDatabase; external ESENT_DLL name 'JetOpenDatabaseW';
|
||
|
{$ELSE}
|
||
|
function JetOpenDatabase; external ESENT_DLL name 'JetOpenDatabaseA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCloseDatabase; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenTable; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenTableA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenTableW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenTable; external ESENT_DLL name 'JetOpenTableW';
|
||
|
{$ELSE}
|
||
|
function JetOpenTable; external ESENT_DLL name 'JetOpenTableA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetSetTableSequential; external ESENT_DLL;
|
||
|
function JetResetTableSequential; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCloseTable; external ESENT_DLL;
|
||
|
function JetDelete; external ESENT_DLL;
|
||
|
function JetUpdate; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
function JetUpdate2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetEscrowUpdate; external ESENT_DLL;
|
||
|
function JetRetrieveColumn; external ESENT_DLL;
|
||
|
|
||
|
function JetRetrieveColumns; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetEnumerateColumns; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetGetRecordSize; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
function JetGetRecordSize2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetColumn; external ESENT_DLL;
|
||
|
function JetSetColumns; external ESENT_DLL;
|
||
|
function JetPrepareUpdate; external ESENT_DLL;
|
||
|
function JetGetRecordPosition; external ESENT_DLL;
|
||
|
function JetGotoPosition; external ESENT_DLL;
|
||
|
function JetGetCursorInfo; external ESENT_DLL;
|
||
|
function JetDupCursor; external ESENT_DLL;
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetCurrentIndex; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetCurrentIndexA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetCurrentIndexW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetCurrentIndex; external ESENT_DLL name 'JetGetCurrentIndexW';
|
||
|
{$ELSE}
|
||
|
function JetGetCurrentIndex; external ESENT_DLL name 'JetGetCurrentIndexA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndexA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndexW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex; external ESENT_DLL name 'JetSetCurrentIndexW';
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex; external ESENT_DLL name 'JetSetCurrentIndexA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndex2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndex2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex2; external ESENT_DLL name 'JetSetCurrentIndex2W';
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex2; external ESENT_DLL name 'JetSetCurrentIndex2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex3; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndex3A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndex3W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex3; external ESENT_DLL name 'JetSetCurrentIndex3W';
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex3; external ESENT_DLL name 'JetSetCurrentIndex3A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetCurrentIndex4; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetCurrentIndex4A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetCurrentIndex4W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetCurrentIndex4; external ESENT_DLL name 'JetSetCurrentIndex4W';
|
||
|
{$ELSE}
|
||
|
function JetSetCurrentIndex4; external ESENT_DLL name 'JetSetCurrentIndex4A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetMove; external ESENT_DLL;
|
||
|
function JetGetLock; external ESENT_DLL;
|
||
|
function JetMakeKey; external ESENT_DLL;
|
||
|
function JetSeek; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
function JetPrereadKeys; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetBookmark; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetGetSecondaryIndexBookmark; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetCompact; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetCompactA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetCompactW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetCompact; external ESENT_DLL name 'JetCompactW';
|
||
|
{$ELSE}
|
||
|
function JetCompact; external ESENT_DLL name 'JetCompactA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDefragment; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDefragmentA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDefragmentW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDefragment; external ESENT_DLL name 'JetDefragmentW';
|
||
|
{$ELSE}
|
||
|
function JetDefragment; external ESENT_DLL name 'JetDefragmentA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDefragment2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDefragment2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDefragment2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDefragment2; external ESENT_DLL name 'JetDefragment2W';
|
||
|
{$ELSE}
|
||
|
function JetDefragment2; external ESENT_DLL name 'JetDefragment2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetDefragment3; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetDefragment3A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetDefragment3W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetDefragment3; external ESENT_DLL name 'JetDefragment3W';
|
||
|
{$ELSE}
|
||
|
function JetDefragment3; external ESENT_DLL name 'JetDefragment3A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetSetDatabaseSize; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetDatabaseSizeA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetSetDatabaseSizeW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetSetDatabaseSize; external ESENT_DLL name 'JetSetDatabaseSizeW';
|
||
|
{$ELSE}
|
||
|
function JetSetDatabaseSize; external ESENT_DLL name 'JetSetDatabaseSizeA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetGrowDatabase; external ESENT_DLL;
|
||
|
function JetSetSessionContext; external ESENT_DLL;
|
||
|
function JetResetSessionContext; external ESENT_DLL;
|
||
|
function JetGotoBookmark; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetGotoSecondaryIndexBookmark; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetIntersectIndexes; external ESENT_DLL;
|
||
|
function JetComputeStats; external ESENT_DLL;
|
||
|
function JetOpenTempTable; external ESENT_DLL;
|
||
|
function JetOpenTempTable2; external ESENT_DLL;
|
||
|
function JetOpenTempTable3; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOpenTemporaryTable; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetBackup; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetBackupA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetBackupW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetBackup; external ESENT_DLL name 'JetBackupW';
|
||
|
{$ELSE}
|
||
|
function JetBackup; external ESENT_DLL name 'JetBackupA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetBackupInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetBackupInstanceA; external ESENT_DLL;
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetBackupInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetBackupInstance; external ESENT_DLL name 'JetBackupInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetBackupInstance; external ESENT_DLL name 'JetBackupInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRestore; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRestoreA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRestoreW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRestore; external ESENT_DLL name 'JetRestoreW';
|
||
|
{$ELSE}
|
||
|
function JetRestore; external ESENT_DLL name 'JetRestoreA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRestore2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRestore2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRestore2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRestore2; external ESENT_DLL name 'JetRestore2W';
|
||
|
{$ELSE}
|
||
|
function JetRestore2; external ESENT_DLL name 'JetRestore2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetRestoreInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRestoreInstanceA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetRestoreInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetRestoreInstance; external ESENT_DLL name 'JetRestoreInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetRestoreInstance; external ESENT_DLL name 'JetRestoreInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetSetIndexRange; external ESENT_DLL;
|
||
|
function JetIndexRecordCount; external ESENT_DLL;
|
||
|
function JetRetrieveKey; external ESENT_DLL;
|
||
|
function JetBeginExternalBackup; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetBeginExternalBackupInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetAttachInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetAttachInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetAttachInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetAttachInfo; external ESENT_DLL name 'JetGetAttachInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetAttachInfo; external ESENT_DLL name 'JetGetAttachInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetAttachInfoInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetAttachInfoInstanceA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetAttachInfoInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetAttachInfoInstance; external ESENT_DLL name 'JetGetAttachInfoInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetGetAttachInfoInstance; external ESENT_DLL name 'JetGetAttachInfoInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenFile; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenFileA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenFileW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenFile; external ESENT_DLL name 'JetOpenFileW';
|
||
|
{$ELSE}
|
||
|
function JetOpenFile; external ESENT_DLL name 'JetOpenFileA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOpenFileInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOpenFileInstanceA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOpenFileInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOpenFileInstance; external ESENT_DLL name 'JetOpenFileInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetOpenFileInstance; external ESENT_DLL name 'JetOpenFileInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetReadFile; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetReadFileInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetCloseFile; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetCloseFileInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetLogInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetLogInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetLogInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetLogInfo; external ESENT_DLL name 'JetGetLogInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetLogInfo; external ESENT_DLL name 'JetGetLogInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetLogInfoInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetLogInfoInstanceA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetLogInfoInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetLogInfoInstance; external ESENT_DLL name 'JetGetLogInfoInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetGetLogInfoInstance; external ESENT_DLL name 'JetGetLogInfoInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetLogInfoInstance2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetLogInfoInstance2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetLogInfoInstance2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetLogInfoInstance2; external ESENT_DLL name 'JetGetLogInfoInstance2W';
|
||
|
{$ELSE}
|
||
|
function JetGetLogInfoInstance2; external ESENT_DLL name 'JetGetLogInfoInstance2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetTruncateLogInfoInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetTruncateLogInfoInstanceA; external ESENT_DLL;
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetTruncateLogInfoInstanceW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetTruncateLogInfoInstance; external ESENT_DLL name 'JetGetTruncateLogInfoInstanceW';
|
||
|
{$ELSE}
|
||
|
function JetGetTruncateLogInfoInstance; external ESENT_DLL name 'JetGetTruncateLogInfoInstanceA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetTruncateLog; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetTruncateLogInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetEndExternalBackup; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
function JetEndExternalBackupInstance; external ESENT_DLL;
|
||
|
function JetEndExternalBackupInstance2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetExternalRestore; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetExternalRestoreA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetExternalRestoreW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetExternalRestore; external ESENT_DLL name 'JetExternalRestoreW';
|
||
|
{$ELSE}
|
||
|
function JetExternalRestore; external ESENT_DLL name 'JetExternalRestoreA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION >= $0501}
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetExternalRestore2; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetExternalRestore2A; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetExternalRestore2W; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetExternalRestore2; external ESENT_DLL name 'JetExternalRestore2W';
|
||
|
{$ELSE}
|
||
|
function JetExternalRestore2; external ESENT_DLL name 'JetExternalRestore2A';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetRegisterCallback; external ESENT_DLL;
|
||
|
|
||
|
|
||
|
function JetUnregisterCallback; external ESENT_DLL;
|
||
|
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetGetInstanceInfo; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetGetInstanceInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetGetInstanceInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetGetInstanceInfo; external ESENT_DLL name 'JetGetInstanceInfoW';
|
||
|
{$ELSE}
|
||
|
function JetGetInstanceInfo; external ESENT_DLL name 'JetGetInstanceInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetFreeBuffer; external ESENT_DLL;
|
||
|
function JetSetLS; external ESENT_DLL;
|
||
|
function JetGetLS; external ESENT_DLL;
|
||
|
function JetOSSnapshotPrepare; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOSSnapshotPrepareInstance; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
function JetOSSnapshotFreeze; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOSSnapshotFreezeA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOSSnapshotFreezeW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOSSnapshotFreeze; external ESENT_DLL name 'JetOSSnapshotFreezeW';
|
||
|
{$ELSE}
|
||
|
function JetOSSnapshotFreeze; external ESENT_DLL name 'JetOSSnapshotFreezeA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
|
||
|
function JetOSSnapshotThaw; external ESENT_DLL;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0502}
|
||
|
function JetOSSnapshotAbort; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
|
||
|
function JetOSSnapshotTruncateLog; external ESENT_DLL;
|
||
|
function JetOSSnapshotTruncateLogInstance; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION < $0600}
|
||
|
JetOSSnapshotGetFreezeInfoA = JetOSSnapshotGetFreezeInfo;
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOSSnapshotGetFreezeInfoA; external ESENT_DLL;
|
||
|
|
||
|
{$IF JET_VERSION >= $0600}
|
||
|
function JetOSSnapshotGetFreezeInfoW; external ESENT_DLL;
|
||
|
|
||
|
{$IFDEF JET_UNICODE}
|
||
|
function JetOSSnapshotGetFreezeInfo; external ESENT_DLL name 'JetOSSnapshotGetFreezeInfoW';
|
||
|
{$ELSE}
|
||
|
function JetOSSnapshotGetFreezeInfo; external ESENT_DLL name 'JetOSSnapshotGetFreezeInfoA';
|
||
|
{$ENDIF}
|
||
|
{$IFEND}
|
||
|
|
||
|
function JetOSSnapshotEnd; external ESENT_DLL;
|
||
|
|
||
|
{$IFEND}
|
||
|
|
||
|
{$IF JET_VERSION >= $0601}
|
||
|
function JetConfigureProcessForCrashDump; external ESENT_DLL;
|
||
|
{$IFEND}
|
||
|
|
||
|
{$ENDIF}
|
||
|
|
||
|
end.
|
||
|
|
||
|
|