📄 absbase.pas
字号:
// destroy
//------------------------------------------------------------------------------
destructor TABSIndexDef.Destroy;
begin
ColumnCount := 0;
inherited Destroy;
end;// Destroy
//------------------------------------------------------------------------------
// assign another IndexDef
//------------------------------------------------------------------------------
procedure TABSIndexDef.Assign(Source: TABSMetaObjectDef);
var
i: Integer;
begin
inherited Assign(Source);
IndexType := TABSIndexDef(Source).IndexType;
Unique := TABSIndexDef(Source).Unique;
Primary := TABSIndexDef(Source).Primary;
FRootPageNo := TABSIndexDef(Source).RootPageNo;
ColumnCount := TABSIndexDef(Source).ColumnCount;
FTemporary := TABSIndexDef(Source).Temporary;
FSessionID := TABSIndexDef(Source).SessionID;
FTableState := TABSIndexDef(Source).TableState;
FNeedRebuild := TABSIndexDef(Source).NeedRebuild;
for i := 0 to ColumnCount-1 do
begin
Columns[i].FieldName := TABSIndexDef(Source).Columns[i].FieldName;
Columns[i].Descending := TABSIndexDef(Source).Columns[i].Descending;
Columns[i].CaseInsensitive := TABSIndexDef(Source).Columns[i].CaseInsensitive;
Columns[i].MaxIndexedSize := TABSIndexDef(Source).Columns[i].MaxIndexedSize;
end;
end;// Assign
//------------------------------------------------------------------------------
// assign by names
//------------------------------------------------------------------------------
procedure TABSIndexDef.AssignByNames(FieldNames, AscDescList, CaseSensitivityList: TStringList);
var i: integer;
begin
if (FieldNames.Count <> AscDescList.Count) then
raise EABSException.Create(10278,ErrorLDifferentListsLength,
[FieldNames.Count,AscDescList.Count]);
if (FieldNames.Count <> CaseSensitivityList.Count) then
raise EABSException.Create(10279,ErrorLDifferentListsLength,
[FieldNames.Count,CaseSensitivityList.Count]);
ColumnCount := FieldNames.Count;
for i := 0 to ColumnCount-1 do
begin
Columns[i].FieldName := FieldNames[i];
Columns[i].Descending := (AscDescList[i] = ABS_DESC);
Columns[i].CaseInsensitive := (CaseSensitivityList[i] = ABS_NO_CASE);
Columns[i].MaxIndexedSize := DEFAULT_MAX_INDEXED_SIZE;
end;
end;
//------------------------------------------------------------------------------
// load from stream
//------------------------------------------------------------------------------
procedure TABSIndexDef.LoadFromStream(Stream: TStream);
var i: Integer;
begin
inherited LoadFromStream(Stream);
LoadDataFromStream(FIndexType,Sizeof(FIndexType),Stream,10349);
LoadDataFromStream(FUnique,Sizeof(FUnique),Stream,10350);
LoadDataFromStream(FPrimary,Sizeof(FPrimary),Stream,10351);
FTemporary := False;
LoadDataFromStream(i,Sizeof(i),Stream,10352);
ColumnCount := i;
LoadDataFromStream(FRootPageNo,Sizeof(FRootPageNo),Stream,10353);
for i := 0 to ColumnCount-1 do
Columns[i].LoadFromStream(Stream);
end; // LoadFromStream
//------------------------------------------------------------------------------
// save to stream
//------------------------------------------------------------------------------
procedure TABSIndexDef.SaveToStream(Stream: TStream);
var i: Integer;
begin
inherited SaveToStream(Stream);
SaveDataToStream(FIndexType,Sizeof(FIndexType),Stream,10344);
SaveDataToStream(FUnique,Sizeof(FUnique),Stream,10345);
SaveDataToStream(FPrimary,Sizeof(FPrimary),Stream,10346);
i := ColumnCount;
SaveDataToStream(i,Sizeof(i),Stream,10347);
SaveDataToStream(FRootPageNo,Sizeof(FRootPageNo),Stream,10348);
for i := 0 to ColumnCount-1 do
Columns[i].SaveToStream(Stream);
end; // SaveToStream
////////////////////////////////////////////////////////////////////////////////
//
// TABSConstraintDef
//
////////////////////////////////////////////////////////////////////////////////
//------------------------------------------------------------------------------
// Assign
//------------------------------------------------------------------------------
procedure TABSConstraintDef.Assign(Source: TABSMetaObjectDef);
begin
inherited Assign(Source);
FConstraintType := TABSConstraintDef(Source).FConstraintType;
end;//Assign
////////////////////////////////////////////////////////////////////////////////
//
// TABSConstraintDefNotNull
//
////////////////////////////////////////////////////////////////////////////////
//------------------------------------------------------------------------------
// Constructor
//------------------------------------------------------------------------------
constructor TABSConstraintDefNotNull.Create;
begin
FConstraintType := ctNotNull;
end;//Create
//------------------------------------------------------------------------------
// Assign
//------------------------------------------------------------------------------
procedure TABSConstraintDefNotNull.Assign(Source: TABSMetaObjectDef);
begin
inherited Assign(Source);
FTableSchemaName := TABSConstraintDefNotNull(Source).FTableSchemaName;
FTableSchemaObjectID := TABSConstraintDefNotNull(Source).FTableSchemaObjectID;
FTableName := TABSConstraintDefNotNull(Source).FTableName;
FTableObjectID := TABSConstraintDefNotNull(Source).FTableObjectID;
FColumnName := TABSConstraintDefNotNull(Source).FColumnName;
FColumnObjectID := TABSConstraintDefNotNull(Source).FColumnObjectID;
end;//Assign
//------------------------------------------------------------------------------
// SetNames
//------------------------------------------------------------------------------
procedure TABSConstraintDefNotNull.SetNames(ColumnName, TableName, SchemaName: String);
begin
FColumnName := ColumnName;
FTableName := TableName;
FSchemaName := SchemaName;
end;//SetNames
//------------------------------------------------------------------------------
// load from stream
//------------------------------------------------------------------------------
procedure TABSConstraintDefNotNull.LoadFromStream(Stream: TStream);
var Len: Byte;
begin
inherited LoadFromStream(Stream);
LoadDataFromStream(FTableSchemaObjectID,sizeof(FTableSchemaObjectID),Stream,10249);
LoadDataFromStream(FTableObjectID,sizeof(FTableObjectID),Stream,10250);
LoadDataFromStream(FColumnObjectID,sizeof(FColumnObjectID),Stream,10251);
LoadDataFromStream(Len,sizeof(Len),Stream,10252);
SetLength(FTableSchemaName,Len-1);
LoadDataFromStream(PChar(@FTableSchemaName)^,Len,Stream,10253);
LoadDataFromStream(Len,sizeof(Len),Stream,10254);
SetLength(FTableName,Len-1);
LoadDataFromStream(PChar(@FTableName)^,Len,Stream,10255);
LoadDataFromStream(Len,sizeof(Len),Stream,10256);
SetLength(FColumnName,Len-1);
LoadDataFromStream(PChar(@FColumnName)^,Len,Stream,10257);
end; // LoadFromStream
//------------------------------------------------------------------------------
// save to stream
//------------------------------------------------------------------------------
procedure TABSConstraintDefNotNull.SaveToStream(Stream: TStream);
var Len: Byte;
begin
inherited SaveToStream(Stream);
SaveDataToStream(FTableSchemaObjectID,sizeof(FTableSchemaObjectID),Stream,10240);
SaveDataToStream(FTableObjectID,sizeof(FTableObjectID),Stream,10241);
SaveDataToStream(FColumnObjectID,sizeof(FColumnObjectID),Stream,10242);
Len := Length(FTableSchemaName)+1;
SaveDataToStream(Len,Sizeof(Len),Stream,10243);
SaveDataToStream(PChar(@FTableSchemaName)^,Len,Stream,10244);
Len := Length(FTableName)+1;
SaveDataToStream(Len,Sizeof(Len),Stream,10245);
SaveDataToStream(PChar(@FTableName)^,Len,Stream,10246);
Len := Length(FColumnName)+1;
SaveDataToStream(Len,Sizeof(Len),Stream,10247);
SaveDataToStream(PChar(@FColumnName)^,Len,Stream,10248);
end; // SaveToStream
////////////////////////////////////////////////////////////////////////////////
//
// TABSConstraintDefCheck
//
////////////////////////////////////////////////////////////////////////////////
//------------------------------------------------------------------------------
// Constructor
//------------------------------------------------------------------------------
constructor TABSConstraintDefCheck.Create;
begin
FConstraintType := ctCheck;
FMinValue := TABSVariant.Create;
FMaxValue := TABSVariant.Create;
end;//Create
//------------------------------------------------------------------------------
// Destructor
//------------------------------------------------------------------------------
destructor TABSConstraintDefCheck.Destroy;
begin
FMinValue.Free;
FMaxValue.Free;
inherited;
end;//Destroy
//------------------------------------------------------------------------------
// Assign
//------------------------------------------------------------------------------
procedure TABSConstraintDefCheck.Assign(Source: TABSMetaObjectDef);
begin
inherited Assign(Source);
FTableSchemaName := TABSConstraintDefCheck(Source).FTableSchemaName;
FTableSchemaObjectID := TABSConstraintDefCheck(Source).FTableSchemaObjectID;
FTableName := TABSConstraintDefCheck(Source).FTableName;
FTableObjectID := TABSConstraintDefCheck(Source).FTableObjectID;
FColumnName := TABSConstraintDefCheck(Source).FColumnName;
FColumnObjectID := TABSConstraintDefCheck(Source).FColumnObjectID;
FMinValue.Assign(TABSConstraintDefCheck(Source).FMinValue);
FMaxValue.Assign(TABSConstraintDefCheck(Source).FMaxValue);
end;//Assign
//------------------------------------------------------------------------------
// SetNames
//------------------------------------------------------------------------------
procedure TABSConstraintDefCheck.SetNames(ColumnName, TableName,
SchemaName: String);
begin
FColumnName := ColumnName;
FTableName := TableName;
FSchemaName := SchemaName;
end;//SetNames
//------------------------------------------------------------------------------
// load from stream
//------------------------------------------------------------------------------
procedure TABSConstraintDefCheck.LoadFromStream(Stream: TStream);
var Len: Byte;
begin
inherited LoadFromStream(Stream);
LoadDataFromStream(FTableSchemaObjectID,sizeof(FTableSchemaObjectID),Stream,10230);
LoadDataFromStream(FTableObjectID,sizeof(FTableObjectID),Stream,10231);
LoadDataFromStream(FColumnObjectID,sizeof(FColumnObjectID),Stream,10232);
LoadDataFromStream(Len,sizeof(Len),Stream,10233);
SetLength(FTableSchemaName,Len-1);
LoadDataFromStream(PChar(@FTableSchemaName)^,Len,Stream,10234);
LoadDataFromStream(Len,sizeof(Len),Stream,10235);
SetLength(FTableName,Len-1);
LoadDataFromStream(PChar(@FTableName)^,Len,Stream,10236);
LoadDataFromStream(Len,sizeof(Len),Stream,10237);
SetLength(FColumnName,Len-1);
LoadDataFromStream(PChar(@FColumnName)^,Len,Stream,10238);
FMinValue.LoadFromStream(Stream);
FMaxValue.LoadFromStream(Stream);
end; // LoadFromStream
//------------------------------------------------------------------------------
// save to stream
//------------------------------------------------------------------------------
procedure TABSConstraintDefCheck.SaveToStream(Stream: TStream);
var Len: Byte;
begin
inherited SaveToStream(Stream);
SaveDataToStream(FTableSchemaObjectID,sizeof(FTableSchemaObjectID),Stream,10227);
SaveDataToStream(FTableObjectID,sizeof(FTableObjectID),Stream,10228);
SaveDataToStream(FColumnObjectID,sizeof(FColumnObjectID),Stream,10229);
Len := Length(FTableSchemaName)+1;
SaveDataToStream(Len,Sizeof(Len),Stream,10221);
SaveDataToStream(PChar(@FTableSchemaName)^,Len,Stream,10222);
Len := Length(FTableName)+1;
SaveDataToStream(Len,Sizeof(Len),Stream,10223);
SaveDataToStream(PChar(@FTableName)^,Len,Stream,10224);
Len := Length(FColumnName)+1;
SaveDataToStream(Len,Sizeof(Len),Stream,10225);
SaveDataToStream(PChar(@FColumnName)^,Len,Stream,10226);
FMinValue.SaveToStream(Stream);
FMaxValue.SaveToStream(Stream);
end; // SaveToStream
//////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -