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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? myldbconverts.pas

?? 一個本地database引擎,支持中文T_Sql查詢,兼容DELPHI標準數據庫控件
?? PAS
?? 第 1 頁 / 共 3 頁
字號:
     Break;
    end;
end;//StrToAft


//------------------------------------------------------------------------------
// BaseFieldType for print
//------------------------------------------------------------------------------
function BftToStr(BaseFieldType: TMYLDBBaseFieldType): String;
var i: Integer;
begin
  Result := 'Unknown';
  for i:=Low(SQLFieldTypes) to High(SQLFieldTypes) do
    if SQLFieldTypes[i].BaseFieldType = BaseFieldType then
      begin
        Result := SQLFieldTypes[i].SqlName;
        break;
      end;
end;//BftToStr


//------------------------------------------------------------------------------
// FieldType for print
//------------------------------------------------------------------------------
function FtToStr(FieldType: TFieldType): String;
var i: Integer;
begin
  Result := 'Unknown';
  for i:=Low(SQLFieldTypes) to High(SQLFieldTypes) do
    if SQLFieldTypes[i].FieldType = FieldType then
      begin
        Result := SQLFieldTypes[i].SqlName;
        break;
      end;
end;//FtToStr


//------------------------------------------------------------------------------
// Convert MYLDBDate to Date
//------------------------------------------------------------------------------
function MYLDBDateToDate(MYLDBDate: TMYLDBDate): TDateTime;
const
  // MinInteger (-2147483648) + DateDelta
  MinDate = -2146790054;
begin

  if MYLDBDate > MinDate then
   Result := MYLDBDate - DateDelta;
end;//MYLDBDateToDate


//------------------------------------------------------------------------------
// Convert Date to MYLDBDate
//------------------------------------------------------------------------------
function DateToMYLDBDate(Date: TDateTime): TMYLDBDate;
begin
  Result := Trunc(Date) + DateDelta;
end;//DateToMYLDBDate


//------------------------------------------------------------------------------
// Convert MYLDBTime to Time
//------------------------------------------------------------------------------
function MYLDBTimeToTime(MYLDBTime: TMYLDBTime): TDateTime;
begin
  Result := Frac(MYLDBTime / (24*60*60*1000));
end;//MYLDBTimeToTime


//------------------------------------------------------------------------------
// Convert Time to MYLDBTime
//------------------------------------------------------------------------------
function TimeToMYLDBTime(Time: TDateTime): TMYLDBTime;
begin
  //Result := Trunc(Frac(Time) * (24*60*60*1000));
  Result := Round(Frac(Time) * (24*60*60*1000));
end;//TimeToMYLDBTime


//------------------------------------------------------------------------------
// Convert MYLDBDateTime to DateTime
//------------------------------------------------------------------------------
function MYLDBDateTimeToDateTime(MYLDBDateTime: TMYLDBDateTime): TDateTime;
begin
  Result := MYLDBDateToDate(MYLDBDateTime.Date) + MYLDBTimeToTime(MYLDBDateTime.Time);
end;//MYLDBDateTimeToDateTime


//------------------------------------------------------------------------------
// Convert DateTime to MYLDBDateTime
//------------------------------------------------------------------------------
function DateTimeToMYLDBDateTime(DateTime: TDateTime): TMYLDBDateTime;
begin
  Result.Date := DateToMYLDBDate(DateTime);
  Result.Time := TimeToMYLDBTime(DateTime);
end;//MYLDBDateTimeToDateTime


//------------------------------------------------------------------------------
// return true if field type is a BLOB field type
//------------------------------------------------------------------------------
function IsBLOBFieldType(FieldType: TMYLDBBaseFieldType): Boolean;
begin
  Result := FieldType in [bftBLOB, bftClob, bftWideClob];
end; // IsBLOBFieldType


//------------------------------------------------------------------------------
// return true if field type is a BLOB field type
//------------------------------------------------------------------------------
function IsBLOBFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := FieldType in [aftBLOB, aftGraphic, aftMemo, aftFormattedMemo, aftWideMemo];
end; // IsBLOBFieldType


//------------------------------------------------------------------------------
// return true if field type is a string field type, but not wide string
//------------------------------------------------------------------------------
function IsStringFieldType(FieldType: TMYLDBBaseFieldType): Boolean;
begin
  Result := FieldType in [bftChar, bftWideChar, bftVarchar, bftWideVarchar];
end; // IsStringFieldType


//------------------------------------------------------------------------------
// return true if field type is a string field type, but not wide string
//------------------------------------------------------------------------------
function IsStringFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := FieldType in [aftChar, aftString, aftWideChar, aftWideString, aftGuid];
end; // IsStringFieldType


//------------------------------------------------------------------------------
// return true if field type is a wide string field type
//------------------------------------------------------------------------------
function IsWideStringFieldType(FieldType: TMYLDBBaseFieldType): Boolean;
begin
  Result := FieldType in [bftWideChar, bftWideVarchar];
end; // IsStringFieldType


//------------------------------------------------------------------------------
// return true if field type is a wide string field type
//------------------------------------------------------------------------------
function IsWideStringFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := FieldType in [aftWideChar, aftWideString];
end; // IsWideStringFieldType


//------------------------------------------------------------------------------
// return true if field type is a Bytes field type, but not wide Bytes
//------------------------------------------------------------------------------
function IsBytesFieldType(FieldType: TMYLDBBaseFieldType): Boolean;
begin
  Result := FieldType in [bftBytes, bftVarBytes];
end; // IsBytesFieldType


//------------------------------------------------------------------------------
// return true if field type is a Bytes field type, but not wide Bytes
//------------------------------------------------------------------------------
function IsBytesFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := FieldType in [aftBytes, aftVarBytes];
end; // IsBytesFieldType


//------------------------------------------------------------------------------
// return true if field type is a Autoinc field type, but not wide Autoinc
//------------------------------------------------------------------------------
function IsAutoincFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := FieldType in [aftAutoInc,
                          aftAutoIncShortint,
                          aftAutoIncSmallint,
                          aftAutoIncInteger,
                          aftAutoIncLargeint,
                          aftAutoIncByte,
                          aftAutoIncWord,
                          aftAutoIncCardinal];
end; // IsAutoincFieldType


//------------------------------------------------------------------------------
// return true if DataType is numeric
//------------------------------------------------------------------------------
function IsNumericFieldType(FieldType: TMYLDBBaseFieldType): Boolean;
begin
  Result := FieldType in [bftSignedInt8, bftSignedInt16, bftSignedInt32, bftSignedInt64,
                          bftUnsignedInt8, bftUnsignedInt16, bftUnsignedInt32,
                          bftSingle, bftDouble, bftExtended, bftCurrency];
end;//IsNumericDataType


//------------------------------------------------------------------------------
// return true if DataType is numeric
//------------------------------------------------------------------------------
function IsNumericFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := IsNumericFieldType(AdvancedFieldTypeToBaseFieldType(FieldType));
end;//IsNumericDataType


//------------------------------------------------------------------------------
// return true if DataType is TateTime, Time, Date, TimeStamp
//------------------------------------------------------------------------------
function IsDateTimeFieldType(FieldType: TMYLDBBaseFieldType): Boolean;
begin
  Result := FieldType in [bftDate, bftTime, bftDateTime];
end;//IsDateTimeFieldType


//------------------------------------------------------------------------------
// return true if DataType is TateTime, Time, Date, TimeStamp
//------------------------------------------------------------------------------
function IsDateTimeFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := IsDateTimeFieldType(AdvancedFieldTypeToBaseFieldType(FieldType));
end;//IsDateTimeFieldType


//------------------------------------------------------------------------------
// return true if DataType is String, bytes, etc.
//------------------------------------------------------------------------------
function IsSizebleFieldType(FieldType: TMYLDBAdvancedFieldType): Boolean;
begin
  Result := (IsStringFieldType(FieldType) or (FieldType in [aftBytes, aftVarBytes])) and
     (FieldType <> aftGuid); // 5.05 fix ExportToSQL problem
end;//IsSizebleFieldType


//------------------------------------------------------------------------------
// Result = Can cast this type
//------------------------------------------------------------------------------
function IsConvertableFieldType(FieldType: TMYLDBAdvancedFieldType): boolean;
begin
  Result := FieldType in [aftChar, aftString, aftWideChar, aftWideString,
                          aftShortint, aftSmallint,
                          aftAutoInc,aftAutoIncShortint,aftAutoIncSmallint,aftAutoIncInteger,aftAutoIncLargeint,aftAutoIncByte,aftAutoIncWord,aftAutoIncCardinal,
                          aftInteger,
                          aftLargeint, aftByte, aftWord, aftCardinal,
                          aftSingle, aftDouble, aftExtended,
                          aftBoolean,
                          aftCurrency,
                          aftDate, aftTime, aftDateTime, aftTimeStamp,
                          aftMemo, aftFormattedMemo, aftWideMemo];
end; // IsConvertableFieldType


function IsStrMatchPattern(StrPtr: PChar; PatternPtr: PChar; IsPatternEscaped: Boolean; EscapeChar: Char; bIgnoreCase:boolean): Boolean;
var i : integer;
    bEQ: Boolean;
    tmp1, tmp2: array [0..1] of char;
begin
  tmp1[0]:=#0; tmp1[1]:=#0;
  tmp2[0]:=#0;tmp2[1]:=#0;
  repeat
      if (StrComp(PatternPtr,WildCardMultipleChar)=0) then
       begin
         Result:=True;
         exit;
       end
      else if (StrPtr^=#0) and (PatternPtr^ <> #0) then
       begin
         Result:=False;
         exit;
       end
      else if (StrPtr^=#0) then
       begin
         Result:=True;
         exit;
       end
      else
         begin
           case PatternPtr^ of
            WildCardMultipleChar:
               begin
                for i:=0 to Length(StrPtr)-1 do
                 begin
                  if IsStrMatchPattern(StrPtr+i,PatternPtr+1,IsPatternEscaped,EscapeChar,bIgnoreCase) then
                   begin
                    Result := True;
                    exit;
                   end;
                 end;
                Result := False;
                exit;
               end;
            WildCardSingleChar:
               begin
                inc(StrPtr);
                inc(PatternPtr);
               end;
            else

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
风间由美中文字幕在线看视频国产欧美| 国产精品亲子伦对白| 亚洲影院理伦片| 久久综合色之久久综合| 久久国内精品视频| 精品国产百合女同互慰| 国产成人自拍在线| 亚洲欧美福利一区二区| 色成人在线视频| 日韩va亚洲va欧美va久久| 91精品欧美久久久久久动漫| 麻豆精品一区二区| 国产午夜一区二区三区| 91网站视频在线观看| 午夜影院久久久| 精品国产一区二区亚洲人成毛片| 国产高清亚洲一区| 亚洲男同1069视频| 欧美电影影音先锋| 国产精品 欧美精品| 亚洲欧洲性图库| 欧美人与性动xxxx| 国产老妇另类xxxxx| 亚洲视频资源在线| 91精品国产综合久久精品性色| 麻豆传媒一区二区三区| 中文字幕国产一区二区| 欧美在线免费播放| 国内成+人亚洲+欧美+综合在线 | 国产呦精品一区二区三区网站| 国产肉丝袜一区二区| 91黄色免费观看| 韩国精品免费视频| 亚洲一区视频在线| 久久亚洲精品国产精品紫薇| 在线观看不卡一区| 国产麻豆成人精品| 石原莉奈在线亚洲三区| 国产精品你懂的在线| 欧美一区二区三区免费大片 | 不卡欧美aaaaa| 视频一区视频二区中文| 国产欧美精品一区| 91精品国产色综合久久不卡电影| 成人午夜视频在线| 久久精品国产77777蜜臀| 亚洲男人天堂av网| 国产欧美一区二区精品仙草咪| 欧美理论片在线| 日韩欧美亚洲国产精品字幕久久久| 成人av网站大全| 久久99在线观看| 亚洲第一主播视频| 亚洲精品视频在线观看免费| 久久久国际精品| 欧美一卡二卡三卡| 在线免费观看视频一区| 成人av在线播放网站| 国产一区二区看久久| 日本午夜一区二区| 一区二区日韩av| 1区2区3区国产精品| 国产日韩影视精品| 精品国产伦理网| 欧美大片日本大片免费观看| 欧美日韩精品福利| 91久久国产综合久久| 色呦呦一区二区三区| jvid福利写真一区二区三区| 国产东北露脸精品视频| 精品一区二区三区免费| 麻豆成人免费电影| 久久草av在线| 麻豆精品国产91久久久久久 | 日本网站在线观看一区二区三区 | 一区二区三区美女| 亚洲三级在线看| 亚洲视频一区二区在线观看| 亚洲欧洲日本在线| 国产精品久久午夜| 亚洲色图一区二区三区| 日韩美女精品在线| 亚洲乱码日产精品bd| 亚洲精品国产品国语在线app| 亚洲欧美日韩国产中文在线| 亚洲乱码中文字幕综合| 亚洲国产综合在线| 亚洲sss视频在线视频| 日本欧美韩国一区三区| 久久66热偷产精品| 国产美女精品人人做人人爽| 国产高清精品网站| aaa亚洲精品| 色婷婷国产精品综合在线观看| 欧美在线高清视频| 欧美一级夜夜爽| 一区二区三区资源| 日韩高清在线不卡| 激情成人综合网| 高清成人免费视频| 色av成人天堂桃色av| 在线成人av网站| 久久精品网站免费观看| 国产精品午夜电影| 尤物在线观看一区| 秋霞影院一区二区| 国产精品香蕉一区二区三区| jvid福利写真一区二区三区| 欧美三级电影在线看| 精品国产精品一区二区夜夜嗨 | 国产精品护士白丝一区av| 亚洲日本丝袜连裤袜办公室| 日韩精品三区四区| 国产成人免费视| 欧洲亚洲精品在线| 欧美成人女星排名| 国产精品毛片久久久久久| 一卡二卡三卡日韩欧美| 九九视频精品免费| 色噜噜狠狠成人网p站| 日韩一区二区三区高清免费看看| 久久精品一区四区| 亚洲高清视频的网址| 国产盗摄一区二区| 精品视频色一区| 国产精品视频一区二区三区不卡| 亚洲成人综合视频| 成年人国产精品| 欧美电影精品一区二区| 亚洲精品中文在线观看| 国产毛片一区二区| 宅男在线国产精品| 亚洲人妖av一区二区| 国产精品一区二区果冻传媒| 欧美视频精品在线| 国产精品第一页第二页第三页 | 久草在线在线精品观看| 色婷婷综合激情| 国产日产欧美精品一区二区三区| 日韩国产一二三区| 一本色道久久综合狠狠躁的推荐 | 国产精品久久久久久久第一福利| 日韩高清在线观看| 在线欧美一区二区| 亚洲色图视频网站| 懂色av中文一区二区三区| 日韩视频在线你懂得| 亚洲精品久久久蜜桃| 大陆成人av片| 久久久久九九视频| 精品在线观看免费| 欧美日韩亚洲综合在线| 亚洲免费在线播放| aaa亚洲精品| 亚洲欧洲无码一区二区三区| 国产成人精品网址| 久久综合色之久久综合| 麻豆一区二区三| 日韩欧美三级在线| 日本va欧美va精品发布| 欧美日韩一卡二卡三卡| 亚洲一区二区高清| 色婷婷久久99综合精品jk白丝| 日韩码欧中文字| 色综合一个色综合亚洲| 亚洲精品乱码久久久久久久久| 不卡视频一二三| 自拍偷拍欧美精品| 91久久免费观看| 亚洲国产精品一区二区久久 | 亚洲精品视频一区| 91网站在线播放| 一区二区三区成人| 一本一道久久a久久精品综合蜜臀| 亚洲免费成人av| 色偷偷一区二区三区| 亚洲动漫第一页| 欧美电影一区二区| 九九精品视频在线看| 久久久噜噜噜久噜久久综合| 国产精品99久久久久久似苏梦涵| 国产亚洲精品中文字幕| 国产成人av一区二区| 视频在线观看91| 日韩欧美国产麻豆| 国产成人综合在线| 国产精品免费免费| 欧美最猛黑人xxxxx猛交| 亚洲图片自拍偷拍| 日韩三级免费观看| 国产一区二区在线影院| 亚洲国产精品国自产拍av| 91视频一区二区三区| 亚洲电影激情视频网站| 精品国精品自拍自在线| 高清不卡一区二区| 亚洲一区二区高清| 精品久久99ma| 91在线观看视频| 欧美a一区二区|