⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bde.int

📁 Delphi7官方文档-英文 对于英文好的delphi程序员来说 这个是你的至宝!
💻 INT
📖 第 1 页 / 共 5 页
字号:
    prvFULL      = $1F;                 { Full Writes }
    prvUNKNOWN   = $FF;                 { Unknown }

type
  pSECDesc = ^SECDesc;
  SECDesc = packed record               { Security description }
    iSecNum         : Word;             { Nbr to identify desc }
    eprvTable       : PrvType;          { Table privileges }
    iFamRights      : Word;             { Family rights }
    szPassword      : DBINAME;          { Null terminated string }
    aprvFld         : packed array [0..DBIMAXFLDSINSEC-1] of PrvType;
                     { Field level privileges (prvNONE/prvREADONLY/prvFULL) }
  end;

{============================================================================}
{                            Miscellaneous                                   }
{============================================================================}

{ Index Id used to open table without a default index (i.e. no order) }

const
  NODEFAULTINDEX     = $FFFF;


{============================================================================}
{                    Object types                                            }
{============================================================================}

type
  DBIOBJType = (
    objFILLER,                          { Filler to make next start at 1 }
    objSYSTEM,                          { System object }
    objSESSION,                         { Session object }
    objDRIVER,                          { Driver object }
    objDATABASE,                        { Database object }
    objCURSOR,                          { Cursor object }
    objSTATEMENT,                       { Statement object }
    objCLIENT,                          { Client object }
    objDBSEC,                           { DbSystem object (dBASE only) }
    objREPOSITORY                       { Data Repository object }
  );

  pObjAttrDesc = ^ObjAttrDesc;
  ObjAttrDesc = packed record
    iFldNum    : Word;                  { Field id }
    pszAttributeName : PChar;           { Object attribute name }
  end;

  pObjTypeDesc = ^ObjTypeDesc;
  ObjTypeDesc = packed record
    iFldNum    : Word;                  { Field id }
    szTypeName : DBINAME;               { Object type name }
  end;

  pObjParentDesc = ^ObjParentDesc;
  ObjParentDesc = packed record
    iFldNum    : Word;                  { Field id }
    iParentFldNum : Word;               { Parent Field id }
  end;
  
{============================================================================}
{                    Cursor properties                                       }
{============================================================================}

type
  DBIShareMode = (                      { Database/Table Share type }
    dbiOPENSHARED,                      { Open shared  (Default) }
    dbiOPENEXCL                         { Open exclusive }
  );

  DBIOpenMode = (                       { Database/Table Access type }
    dbiREADWRITE,                       { Read + Write   (Default) }
    dbiREADONLY                         { Read only }
  );

  DBILockType = (                       { Lock types (Table level) }
    dbiNOLOCK,                          { No lock   (Default) }
    dbiWRITELOCK,                       { Write lock }
    dbiREADLOCK                         { Read lock }
  );

  XLTMode = (                           { Field translate mode }
    xltNONE,                            { No translation  (Physical Types) }
    xltRECORD,                          { Record level translation (not supported) }
    xltFIELD                            { Field level translation (Logical types) }
  );

  UPDLockMode = (                       { Update lock mode (SQL only) }
    updWHEREALL,                        { All fields in WHERE clause }
    updWHEREKEYCHG,                     { Keyed and changed fields in WHERE clause }
    updWHEREKEY                         { Keyed fields in WHERE clause }
  );

  TEXACTRECCNTExpensive = (             { Whether DbiGetExactRecordCount is expensive }
    exactRecCntINEXPENSIVE,             { inexpensive }
    exactRecCntEXPENSIVE,               { expensive }
    exactRecCntUNKNOWN                  { record count is unknown }
  );

  pServerColDesc = ^ServerColDesc;
  ServerColDesc = packed record         { Auto increment and Defaults property }
   iFldNum     : Word;                  { Field id }
   bServerCol  : WordBool;              { Auto Increment and Default }
  end;



{ Table levels }

const
  TBLLEVEL3          = 3;               { Paradox level 3 and dBASE level 3+ }
  TBLLEVEL4          = 4;               { Paradox level 4 and dBASE level 4 }
  TBLLEVEL5          = 5;               { Paradox level 5 and dBASE/Win }
  TBLLEVEL7          = 7;               { Paradox level 7 , Win32, dBASE/Win 7 }
  FOXLEVEL25         = 25;              { Fox Table (Ver 2.5) }

type
  pCURProps = ^CURProps;
  CURProps = packed record              { Virtual Table properties }
    szName          : DBITBLNAME;       { table name (no extension, if it can be derived) }
    iFNameSize      : Word;             { Full file name size }
    szTableType     : DBINAME;          { Driver type }
    iFields         : Word;             { No of fields in Table }
    iRecSize        : Word;             { Record size (logical record) }
    iRecBufSize     : Word;             { Record size (physical record) }
    iKeySize        : Word;             { Key size }
    iIndexes        : Word;             { Number of indexes }
    iValChecks      : Word;             { Number of val checks }
    iRefIntChecks   : Word;             { Number of Ref Integrity constraints }
    iBookMarkSize   : Word;             { Bookmark size }
    bBookMarkStable : WordBool;         { Stable book marks }
    eOpenMode       : DBIOpenMode;      { ReadOnly / RW }
    eShareMode      : DBIShareMode;     { Excl / Share }
    bIndexed        : WordBool;         { Index is in use }
    iSeqNums        : SmallInt;         { 1: Has Seqnums; 0: Has Record# }
    bSoftDeletes    : WordBool;         { Supports soft deletes }
    bDeletedOn      : WordBool;         { If above, deleted recs seen }
    iRefRange       : Word;             { Not used }
    exltMode        : XLTMode;          { Translate Mode }
    iRestrVersion   : Word;             { Restructure version number }
    bUniDirectional : WordBool;         { Cursor is uni-directional }
    eprvRights      : Word;             { Table  rights }
    Dummy4          : Word;
    iFmlRights      : Word;             { Family rights }
    iPasswords      : Word;             { Number of Aux passwords }
    iCodePage       : Word;             { Codepage (0 if unknown) }
    bProtected      : WordBool;         { Table is protected by password }
    iTblLevel       : Word;             { Driver dependent table level }
    szLangDriver    : DBINAME;          { Language driver name }
    bFieldMap       : WordBool;         { Field map active }
    iBlockSize      : Word;             { Physical file blocksize in K }
    bStrictRefInt   : WordBool;         { Strict referential integrity }
    iFilters        : Word;             { Number of filters }
    bTempTable      : WordBool;         { Table is a temporary table }
    iUnUsed         : packed array [0..15] of Word;
  end;

{ Delayed Update Types and Constants }

type
  DBIDelayedUpdCmd = (                  { Op types for Delayed Update cursor }
    dbiDelayedUpdCommit,                { Commit the updates }
    dbiDelayedUpdCancel,                { Rollback the updates }
    dbiDelayedUpdCancelCurrent,         { Cancel the Current Rec Change }
    dbiDelayedUpdPrepare                { Phase1 of 2 phase commit }
  );

const
  DBIDELAYUPD_SHOWMODIFYBIT    = $1;    { Show only modified records. }
  DBIDELAYUPD_SHOWINSERTBIT    = $2;    { Show only inserted records. }
  DBIDELAYUPD_SHOWDELETEBIT    = $4;    { Show only deleted records. }
  DBIDELAYUPD_SHOWNONMODIFYBIT = $8;    { Show only unmodified recs. }

{============================================================================}
{                   Record Properties                                        }
{============================================================================}

type
  pRECProps = ^RECProps;
  RECProps = packed record              { Record properties }
    iSeqNum         : Longint;          { When Seq# supported only }
    iPhyRecNum      : Longint;          { When Phy Rec#s supported only }
    iRecStatus      : Word;             { Delayed Updates Record Status }
    bSeqNumChanged  : WordBool;         { Not used }
    bDeleteFlag     : WordBool;         { When soft delete supported only }
  end;


{============================================================================}
{                   General properties  DbiGetProp/DbiSetProp                }
{============================================================================}


{ Cursor properties }
{ General           }

const
  curMAXPROPS        = $00050000;       { ro UINT16   , Number of defined properties }
  curTABLENAME       = $00050001;       { ro pTBLNAME , Table name }
  curTABLETYPE       = $00050002;       { ro pDBINAME , Table type }
  curTABLELEVEL      = $00050003;       { ro UINT16   , Table level 1..n }
  curFILENAME        = $00050004;       { ro pPATH    , Full filename }
  curXLTMODE         = $00050005;       { rw XLTMode  , Translate mode }
  curSEQREADON       = $00050006;       { rw BOOL     , Sequential read mode hint ON }
  curONEPASSON       = $00050007;       { rw BOOL     , One pass mode hint ON }
  curUPDATETS        = $00050008;       { ro TIMESTAMP, Update timestamp }
  curSOFTDELETEON    = $00050009;       { rw BOOL     , Softdelete ON }
  curLANGDRVNAME     = $0005000A;       { ro pCHAR    , Symbolic language drv. name }
  curCURSORNAME      = $0005000B;       { ro pCHAR    , name of the cursor }
  curPESSIMISTICLOCKS= $0005000C;       { rw BOOL     , Pess Locks = TRUE, Optimistic = FALSE }
  curEXACTRECCNTEXPENSIVE= $0005000D;   { ro EXPENSIVE, Whether DbiGetRecordCount is expensive }
  curCOMPRESSARRAYFLDDESC= $0005000E;   { rw BOOL, Compress ARRAY field desc }
  curMAXFIELDID      = $0005000F;       { ro UINT16, Max # of field desc }
  curFIELDFULLNAME   = $00050010;       { ro pObjAttrDesc, Object attribute name }
  curFIELDTYPENAME   = $00050011;       { ro pObjTypeDesc, Object Type name }
  curFIELDIDFORNAME  = $00050012;       { ro Field id returned for a given fieldname }
  curFIELDIDFORPARENT= $00050013;       { ro Field id of the parent returned }
  curMAKECRACK       = $00050014;       { Create a crack at the current cursor position }
  curFIELDISAUTOINCR = $00050015;       { wo BOOL, Auto increment field }
  curFIELDISDEFAULT  = $00050016;       { wo BOOL, Default field }
  curAUTOREFETCH     = $00050017;       { rw BOOL, Refetch inserted record }

  maxcurPROPS        = 23;              { keep in sync when adding cursor properties }

{ Paradox specific }
  curPDXMAXPROPS     = $01050000;       { ro UINT16   , Number of defined properties }
  maxcurPDXPROPS     = 0;

{ DBase specific }
  curDBMAXPROPS      = $02050000;       { ro UINT16   , Number of defined properties }
  curINEXACTON       = $02050001;       { rw BOOL     , InExact match ON }
  curSHAREMODE       = $02050002;       { rw DBIShareMode, Share mode }
  maxcurDBPROPS      = 2;

{ Text Driver specific }
  curDELIMITALLFLDS  = $03050000;       { rw BOOL , Delimit all fields. }
  curUSESCHEMAFILE   = $03050001;       { rw BOOL , read schema from a file }

{ SQL Driver specific }
  curUPDLOCKMODE     = $04050000;       { rw UPDLockMode, Update lock mode }
  curNATIVEHNDL      = $04050001;       { ro pBYTE, Native cursor handle }
  curMAXROWS         = $04050002;       { rw INT32, Max rows to fetch from server }
  curGETEXTENDEDINFO = $04050003;       { rw BOOL, Get RINT info etc. }
  curGETHIDDENCOLUMNS= $04050004;       { rw BOOL , Get all selected columns from server. }
  curAUTOFLUSHREF    = $04050005;       { rw BOOL, automatic flush ref }
  curREFINSERTTABLENAME= $04050006;     { rw pTBLNAME , REF Table name }
  curGETREF          = $04050007;       { ro REF of inserted record }
  curCONSTSTATE      = $0405009B;       { rw BOOL, enable/disable constraints }

{ Delayed Updates Specific. }
  curDELAYUPDRECSTATE     = $05050001;  { ro DELYUPDCbDesc }
  curDELAYUPDABORTRESTORE = $05050002;  { rw BOOL, restore state }
                                        {  when commit is aborted. }
  curDELAYUPDDISPLAYOPT   = $05050003;  { rw UINT16, view records }
                                        {  with specific update status }
  curDELAYUPDGETOLDRECORD = $05050004;  { rw BOOL, get un-modified }
                                        {  rec buf for modified recs }
  curDELAYUPDNUMUPDATES   = $05050005;  { ro INT32, num of updates }
  curDELAYUPDUSECALLBACK  = $05050006;  { rw BOOL, callback usr. }

{ Driver properties }
{ General           }
  drvMAXPROPS        = $00030000;       { ro UINT16   , Number of defined properties }
  drvDRIVERTYPE      = $00030002;       { ro pDBINAME , Driver type }
  drvDRIVERVERSION   = $00030003;       { ro UINT16   , Driver version }
  maxdrvPROPS        = 2;               { keep in sync when adding driver properties }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -