亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? myldbbase.pas

?? 一個本地database引擎,支持中文T_Sql查詢,兼容DELPHI標(biāo)準(zhǔn)數(shù)據(jù)庫控件
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
unit MYLDBBase;

interface

uses SysUtils, Classes,

// MYLDBoluteDatabase units
{$I MYLDBVer.inc}

     {$IFDEF DEBUG_LOG}
     MYLDBDebug,
     {$ENDIF}
     MYLDBMemory,
     MYLDBCompression,
     MYLDBSecurity,
     MYLDBTypes,
     MYLDBConverts,
     MYLDBTypesRoutines,
     MYLDBVariant,
     MYLDBLexer,
     MYLDBExcept,
     MYLDBConst;

type
 // Events
 TMYLDBFilterRecord = Pointer;


type

  TMYLDBBaseSession = class;
  TMYLDBCursor = class;
  TMYLDBIndexDef = class;
  TMYLDBFieldDef = class;

  TMYLDBFieldDefs = class;
  TMYLDBIndexDefs = class;

  TMYLDBCursorPos = record
   FirstPosition: Boolean;
   LastPosition:  Boolean;
   RecordID:      TMYLDBRecordID;
  end;
  PMYLDBCursorPos = ^TMYLDBCursorPos;

////////////////////////////////////////////////////////////////////////////////
//
// TMYLDBMetaObjectDef
//
////////////////////////////////////////////////////////////////////////////////


  TMYLDBMetaObjectDef = class (TObject)
   private
    FName:       TMYLDBObjectName;
    FObjectID:   TMYLDBObjectID;
    FSchemaName: String;
    FSchemaID:   TMYLDBObjectID;
   public
    constructor Create;
    procedure Assign(Source: TMYLDBMetaObjectDef); virtual;
    procedure LoadFromStream(Stream: TStream); virtual;
    procedure SaveToStream(Stream: TStream); virtual;
   public
    property Name: TMYLDBObjectName read FName write FName;
    property ObjectID: TMYLDBObjectID read FObjectID write FObjectID;
    property SchemaName: String read FSchemaName write FSchemaName;
    property SchemaID: TMYLDBObjectID read FSchemaID write FSchemaID;
  end; // TMYLDBMetaObjectDef



////////////////////////////////////////////////////////////////////////////////
//
// TMYLDBFieldDef
//
////////////////////////////////////////////////////////////////////////////////


  TMYLDBFieldDef = class (TMYLDBMetaObjectDef)
   private
    FBaseFieldType:             TMYLDBBaseFieldType;
    FAdvancedFieldType:         TMYLDBAdvancedFieldType;
    FFieldSize:                 Integer;
    FDiskDataSize:              Integer; // size of binary data in disk page or table file
    FMemoryDataSize:            Integer; // size of binary data in record buffer
    FDiskOffset:                Integer; // offset to binary data in disk page or table file
    FMemoryOffset:              Integer; // offset to binary data in record buffer
    FFieldNoReference:          Integer; // index of this field in TableData.FieldManager.FieldDefs

    // Default Value
    FDefaultValue:              TMYLDBVariant;
    FDefaultValueExpr:          TObject;

    // Blob data
    FBLOBCompressionAlgorithm:  TMYLDBCompressionAlgorithm;
    FBLOBCompressionMode:       TMYLDBCompressionMode;
    FBLOBBlockSize:             Integer;

    // Autoinc settings
    FAutoincIncrement:    Int64;
    FAutoincInitialValue: Int64;
    FAutoincMinValue:     Int64;
    FAutoincMaxValue:     Int64;
    FAutoincCycled:       ByteBool;

   private
    procedure RecalcInternalSizes;
    procedure CreateDefaultValueExprIfNeeded;
   public
    constructor Create;
    destructor Destroy; override;
    procedure Assign(Source: TMYLDBMetaObjectDef); override;
    procedure SetFieldDefDataType(
                                  AdvancedFieldType: TMYLDBAdvancedFieldType;
                                  FieldSize:        Integer = 0
                                 ); overload;
    procedure SetFieldDefDataType(
                                  BaseFieldType: TMYLDBBaseFieldType;
                                  FieldSize:        Integer = 0
                                 ); overload;

    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;

   public
    property BaseFieldType: TMYLDBBaseFieldType read FBaseFieldType write FBaseFieldType;
    property AdvancedFieldType: TMYLDBAdvancedFieldType read FAdvancedFieldType write FAdvancedFieldType;
    property FieldSize: Integer read FFieldSize write FFieldSize;
    property DiskOffset: Integer read FDiskOffset write FDiskOffset;
    property MemoryOffset: Integer read FMemoryOffset write FMemoryOffset;
    property DiskDataSize: Integer read FDiskDataSize write FDiskDataSize;
    property MemoryDataSize: Integer read FMemoryDataSize write FMemoryDataSize;
    property FieldNoReference: Integer read FFieldNoReference write FFieldNoReference;

    //property DefaultValueType: TMYLDBDefaultValueType read FDefaultValueType write FDefaultValueType;
    property DefaultValue: TMYLDBVariant read FDefaultValue write FDefaultValue;
    property DefaultValueExpr: TObject read FDefaultValueExpr;

    property AutoincIncrement: Int64    read FAutoincIncrement  write   FAutoincIncrement;
    property AutoincInitialValue: Int64 read FAutoincInitialValue write FAutoincInitialValue;
    property AutoincMinValue:  Int64    read FAutoincMinValue   write   FAutoincMinValue;
    property AutoincMaxValue:  Int64    read FAutoincMaxValue   write   FAutoincMaxValue;
    property AutoincCycled:    ByteBool read FAutoincCycled     write   FAutoincCycled;

    property BLOBCompressionAlgorithm: TMYLDBCompressionAlgorithm read FBLOBCompressionAlgorithm write FBLOBCompressionAlgorithm;
    property BLOBCompressionMode: TMYLDBCompressionMode read FBLOBCompressionMode write FBLOBCompressionMode;
    property BLOBBlockSize: Integer read FBLOBBlockSize write FBLOBBlockSize;
  end; // TMYLDBFieldDef


////////////////////////////////////////////////////////////////////////////////
//
// TMYLDBIndexDef
//
////////////////////////////////////////////////////////////////////////////////


  TMYLDBIndexType = (itBTree,itAnotherOne);

  TMYLDBIndexColumn = class (TObject)
   private
    FFieldName:        String;
    FDescending:       ByteBool;
    FCaseInsensitive:  ByteBool;
    FMaxIndexedSize:   Integer;
   public
    procedure LoadFromStream(Stream: TStream);
    procedure SaveToStream(Stream: TStream);
   public
    property FieldName: String read FFieldName write FFieldName;
    property Descending: ByteBool read FDescending write FDescending;
    property CaseInsensitive: ByteBool read FCaseInsensitive write FCaseInsensitive;
    property MaxIndexedSize: Integer read FMaxIndexedSize write FMaxIndexedSize;
  end;


////////////////////////////////////////////////////////////////////////////////
//
// TMYLDBIndexDef
//
////////////////////////////////////////////////////////////////////////////////

  TMYLDBIndexDef = class (TMYLDBMetaObjectDef)
   private
    FIndexType:           TMYLDBIndexType; // BTree or other
    FIndexColumns:        array of TMYLDBIndexColumn;
    FUnique:              ByteBool;
    FPrimary:             ByteBool;
    FRootPageNo:          TMYLDBPageNo;
    FTemporary:           ByteBool;
    FSessionID:           TMYLDBSessionID; // for temp index
    FTableState:          Integer;       // for temp index
    FNeedRebuild:         ByteBool;      // for temp index

    function GetIndexColumn(Index: Integer): TMYLDBIndexColumn;
    function GetColumnCount: Integer;
    procedure SetColumnCount(Value: Integer);
   public
    constructor Create;
    destructor Destroy; override;
    procedure Assign(Source: TMYLDBMetaObjectDef); override;
    procedure AssignByNames(FieldNames, AscDescList, CaseSensitivityList: TStringList);
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
   public
    property IndexType: TMYLDBIndexType read FIndexType write FIndexType;
    property Columns[Index: Integer]: TMYLDBIndexColumn read GetIndexColumn;
    property ColumnCount: Integer read GetColumnCount write SetColumnCount;
    property Unique: ByteBool read FUnique write FUnique;
    property Primary: ByteBool read FPrimary write FPrimary;
    property RootPageNo: TMYLDBPageNo read FRootPageNo write FRootPageNo;
    property Temporary: ByteBool read FTemporary write FTemporary;
    property SessionID: TMYLDBSessionID read FSessionID write FSessionID;
    property TableState: Integer read FTableState write FTableState;
    property NeedRebuild: ByteBool read FNeedRebuild write FNeedRebuild;
  end; // TMYLDBIndexDef


////////////////////////////////////////////////////////////////////////////////
//
// TMYLDBConstraintDef
//
////////////////////////////////////////////////////////////////////////////////


  TMYLDBConstraintDef = class (TMYLDBMetaObjectDef)
   private
    FConstraintType:  TMYLDBConstraintType;
   public
    procedure Assign(Source: TMYLDBMetaObjectDef); override;
   public
    property ConstraintType: TMYLDBConstraintType read FConstraintType write FConstraintType;
  end;


  TMYLDBConstraintDefNotNull = class (TMYLDBConstraintDef)
   private
    FTableSchemaName:          TMYLDBObjectName;  // Shema
    FTableSchemaObjectID:      TMYLDBObjectID;
    FTableName:                TMYLDBObjectName;  // Table
    FTableObjectID:            TMYLDBObjectID;
    FColumnName:               TMYLDBObjectName;  // Column
    FColumnObjectID:           TMYLDBObjectID;
   public
    constructor Create;
    procedure Assign(Source: TMYLDBMetaObjectDef); override;
    procedure SetNames(
                        ColumnName: String;
                        TableName: String = '';
                        SchemaName: String = ''
                       );
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
   public
    property TableSchemaName: TMYLDBObjectName read FTableSchemaName write FTableSchemaName;
    property TableSchemaObjectID: TMYLDBObjectID read FTableSchemaObjectID write FTableSchemaObjectID;
    property TableName: TMYLDBObjectName read FTableName write FTableName;
    property TableObjectID: TMYLDBObjectID read FTableObjectID write FTableObjectID;
    property ColumnName: TMYLDBObjectName read FColumnName write FColumnName;
    property ColumnObjectID: TMYLDBObjectID read FColumnObjectID write FColumnObjectID;
  end;// TMYLDBConstraintDef


  TMYLDBConstraintDefCheck = class (TMYLDBConstraintDef)
   private
    FTableSchemaName:     TMYLDBObjectName;  // Shema
    FTableSchemaObjectID: TMYLDBObjectID;
    FTableName:           TMYLDBObjectName;  // Table
    FTableObjectID:       TMYLDBObjectID;
    FColumnName:          TMYLDBObjectName;  // Column
    FColumnObjectID:      TMYLDBObjectID;
    FMinValue:            TMYLDBVariant;
    FMaxValue:            TMYLDBVariant;
   public
    constructor Create;
    destructor Destroy; override;
    procedure Assign(Source: TMYLDBMetaObjectDef); override;
    procedure SetNames(
                        ColumnName: String;
                        TableName: String = '';
                        SchemaName: String = ''
                       );
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
   public
    property MinValue: TMYLDBVariant read FMinValue;
    property MaxValue: TMYLDBVariant read FMaxValue;
    property TableSchemaName: TMYLDBObjectName read FTableSchemaName write FTableSchemaName;
    property TableSchemaObjectID: TMYLDBObjectID read FTableSchemaObjectID write FTableSchemaObjectID;
    property TableName: TMYLDBObjectName read FTableName write FTableName;
    property TableObjectID: TMYLDBObjectID read FTableObjectID write FTableObjectID;
    property ColumnName: TMYLDBObjectName read FColumnName write FColumnName;
    property ColumnObjectID: TMYLDBObjectID read FColumnObjectID write FColumnObjectID;
  end;//TMYLDBConstraintDefCheck


  TMYLDBConstraintColumn = record
    ColumnName:          TMYLDBObjectName;  // Column
    ColumnObjectID:      TMYLDBObjectID;
  end;


  TMYLDBConstraintDefUnique = class (TMYLDBConstraintDef)
   private
    FTableSchemaName:          TMYLDBObjectName;  // Shema
    FTableSchemaObjectID:      TMYLDBObjectID;
    FTableName:                TMYLDBObjectName;  // Table
    FTableObjectID:            TMYLDBObjectID;
    FIndexName:                TMYLDBObjectName;  // Index ID
    FIndexObjectID:            TMYLDBObjectID;
   public
    Columns: array of TMYLDBConstraintColumn; // Columns
   public
    constructor Create;
    destructor Destroy; override;
    procedure Assign(Source: TMYLDBMetaObjectDef); override;
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
   public
    property TableSchemaName: TMYLDBObjectName read FTableSchemaName write FTableSchemaName;
    property TableSchemaObjectID: TMYLDBObjectID read FTableSchemaObjectID write FTableSchemaObjectID;
    property TableName: TMYLDBObjectName read FTableName write FTableName;
    property TableObjectID: TMYLDBObjectID read FTableObjectID write FTableObjectID;
    property IndexName: TMYLDBObjectName read FIndexName write FIndexName;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品精品国产色婷婷| 色哟哟一区二区| 久久久精品综合| 国产69精品久久777的优势| 国产欧美精品一区二区色综合| 国产高清久久久| 国产精品久久久久一区| 在线不卡欧美精品一区二区三区| 青青草97国产精品免费观看无弹窗版| 欧美成人aa大片| 高清不卡在线观看av| 亚洲精品一卡二卡| 91精品在线观看入口| 国产一区999| 综合网在线视频| 6080国产精品一区二区| 精品无人码麻豆乱码1区2区| 国产区在线观看成人精品| 日本韩国一区二区三区视频| 天使萌一区二区三区免费观看| 精品国产99国产精品| 成人小视频在线| 五月婷婷欧美视频| 国产亚洲欧美一级| 欧美日韩久久一区二区| 极品少妇一区二区| 亚洲永久免费视频| 久久久五月婷婷| 欧美日韩激情一区二区| 国产激情一区二区三区| 午夜伦理一区二区| 中文字幕在线一区| 欧美成人精品二区三区99精品| 色综合久久综合中文综合网| 日本aⅴ精品一区二区三区 | 久久久久久久久99精品| 91亚洲男人天堂| 国产精品一区二区三区99 | 日本成人在线电影网| 欧美高清在线一区二区| 欧美一区二区三区不卡| 日韩一区二区三| 欧美在线啊v一区| www.欧美日韩| 国产成人免费网站| 日本成人在线一区| 亚洲成人7777| 亚洲老司机在线| 国产精品久久久久久久久久久免费看 | 日韩视频在线你懂得| 日本久久一区二区| av电影在线不卡| 成人夜色视频网站在线观看| 精品亚洲欧美一区| 日韩av一区二区三区| 亚洲午夜免费电影| 一区二区国产视频| 亚洲日本乱码在线观看| 中文字幕二三区不卡| 久久久精品tv| 国产午夜精品美女毛片视频| 日韩一区二区三区视频| 91精品国产综合久久福利软件| 在线中文字幕一区二区| 91久久奴性调教| 91久久免费观看| 欧美体内she精高潮| 色94色欧美sute亚洲13| 成人av电影在线网| av一区二区三区黑人| 不卡一卡二卡三乱码免费网站| 国产成人免费视频网站高清观看视频| 久久爱www久久做| 精品在线一区二区| 国产激情偷乱视频一区二区三区 | 亚洲一区视频在线观看视频| 久久国产夜色精品鲁鲁99| 青草av.久久免费一区| 日韩高清在线观看| 美女爽到高潮91| 麻豆视频观看网址久久| 精品一区二区免费| 国产成人免费在线观看不卡| 播五月开心婷婷综合| 99久久精品费精品国产一区二区| 91麻豆国产香蕉久久精品| 波多野结衣中文字幕一区二区三区| eeuss鲁片一区二区三区| 99久久er热在这里只有精品66| 一本高清dvd不卡在线观看| 欧美在线观看禁18| 日韩视频在线观看一区二区| 久久久亚洲高清| 成人欧美一区二区三区| 亚洲bt欧美bt精品777| 麻豆精品视频在线| 国产精品99久久久久久似苏梦涵| 国产二区国产一区在线观看| 99久久精品国产麻豆演员表| 欧美日韩在线观看一区二区 | 欧美亚洲国产一卡| 欧美高清视频www夜色资源网| 欧美变态口味重另类| 久久精品人人爽人人爽| 一区二区三区欧美| 美日韩一级片在线观看| 99久久国产综合精品麻豆| 91精品国产品国语在线不卡| 国产日本一区二区| 亚洲一区二区3| 国产精品911| 欧美日韩一区在线观看| 久久精品这里都是精品| 一二三四区精品视频| 国产美女视频91| 欧美在线色视频| 国产日产精品一区| 青青草一区二区三区| 91麻豆精东视频| 欧美精品一区二区在线播放| 中文字幕一区二区5566日韩| 天堂在线亚洲视频| 国产成人精品三级麻豆| 欧美日本一道本在线视频| 国产欧美1区2区3区| 日韩精品一级二级 | 国产精品无码永久免费888| 亚洲国产日韩在线一区模特 | 99视频在线观看一区三区| 欧美精品三级在线观看| 亚洲欧洲精品一区二区三区不卡| 免费在线成人网| 欧美亚日韩国产aⅴ精品中极品| 久久亚洲精品国产精品紫薇| 午夜视频一区二区三区| 91在线免费看| 中文在线免费一区三区高中清不卡| 午夜精品爽啪视频| 色综合久久久久综合99| 久久久久9999亚洲精品| 看国产成人h片视频| 欧美日韩激情一区二区| 一区二区成人在线| 92精品国产成人观看免费| 一区二区免费看| 91理论电影在线观看| 久久久99免费| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲精品视频在线观看网站| 国产成人精品亚洲日本在线桃色| 91精品国产一区二区| 亚洲国产精品久久久久婷婷884| 91麻豆免费看片| 综合自拍亚洲综合图不卡区| 成人性生交大片免费看在线播放 | 亚洲男帅同性gay1069| www.亚洲精品| 国产精品理伦片| aaa亚洲精品| 中文字幕日韩欧美一区二区三区| 成人综合婷婷国产精品久久免费| 精品国产第一区二区三区观看体验| 美腿丝袜亚洲综合| 欧美精品一区二区三区视频| 开心九九激情九九欧美日韩精美视频电影 | 久久久久国产精品麻豆| 国产精品一线二线三线| 久久久久久99久久久精品网站| 国内精品久久久久影院薰衣草 | 在线亚洲免费视频| 亚洲欧美色一区| 欧美色精品在线视频| 日韩电影在线观看电影| 69堂精品视频| 韩国中文字幕2020精品| 久久久精品tv| 99精品热视频| 亚洲电影一区二区| 51午夜精品国产| 国产一区二区美女| 国产精品久久国产精麻豆99网站| 91视频在线看| 亚洲第一成人在线| 精品国产91洋老外米糕| 风流少妇一区二区| 亚洲精品中文字幕乱码三区| 欧美日韩精品欧美日韩精品一| 青青草原综合久久大伊人精品 | 国产蜜臀97一区二区三区| 99久久99久久精品国产片果冻| 亚洲精品国产第一综合99久久| 欧美久久久一区| 韩国欧美国产一区| 亚洲免费资源在线播放| 884aa四虎影成人精品一区| 国产一区二区在线电影| 亚洲欧美激情视频在线观看一区二区三区| 欧美日韩午夜影院| 国产91精品露脸国语对白| 亚洲卡通动漫在线|