FCL-DB: many non-const string params
Continuation of #40047. In SUBJ package using the same RegEx, I found many non-const str params. Full log: ``` +Search "[\(;]\s*\w+\s*:\s*string". Report with [styles]. <memds/memds.pp>: #11 < 119>: procedure SetFilterText(AValue: string); //silently drops filter < 120>: Procedure RaiseError(Fmt : String; Args : Array of const); < 144>: Procedure SaveToFile(AFileName : String);{$IFNDEF FPC} overload; {$ENDIF} < 145>: Procedure SaveToFile(AFileName : String; SaveData : Boolean);{$IFNDEF FPC} overload; {$ENDIF} < 149>: Procedure LoadFromFile(AFileName : String); < 284>: Procedure WriteString(S : TStream; Value : String); < 455>: procedure TMemDataset.RaiseError(Fmt: String; Args: array of const); < 708>: procedure TMemDataset.LoadFromFile(AFileName: String); < 723>: procedure TMemDataset.SaveToFile(AFileName: String); < 729>: procedure TMemDataset.SaveToFile(AFileName: String; SaveData: Boolean); <1308>: procedure TMemDataset.SetFilterText(AValue: string); <paradox/paradox.pp>: #3 < 59>: procedure RaiseError(Fmt: String; Args: array of const); < 228>: Procedure InitPXLib(LibName : String); < 259>: Procedure TParadox.RaiseError(Fmt : String; Args : Array of const); <export/fptexexport.pp>: #2 < 75>: function EscapeLaTeX(S: String): String; < 135>: function TCustomTexExporter.EscapeLaTeX(S: String): String; <export/fpsimplejsonexport.pp>: #2 < 61>: function TextString(S: String): String; < 148>: function TCustomSimpleJSONExporter.TextString(S: String): String; <export/fpdbexport.pp>: #5 < 178>: Procedure ExportError(Msg : String); overload; < 179>: Procedure ExportError(Fmt : String; Args: Array of const); overload; < 677>: procedure TCustomDatasetExporter.ExportError(Msg: String); < 682>: procedure TCustomDatasetExporter.ExportError(Fmt: String; < 995>: Procedure AddToResult(S : String); <base/fieldmap.pp>: #10 < 40>: Function FindField(FN : String) : TField; < 41>: Function FieldByName(FN : String) : TField; < 49>: Function GetFromField(F : TField; ADefault : String) : String; overload; < 71>: Function FindParam(FN : String) : TParam; < 72>: Function ParamByName(FN : String) : TParam; < 471>: function TParamMap.FindParam(FN: String): TParam; < 478>: function TParamMap.ParamByName(FN: String): TParam; < 528>: function TFieldMap.FieldByName(FN: String): TField; < 540>: function TFieldMap.FindField(FN: String): TField; < 556>: function TFieldMap.GetFromField(F: TField; ADefault: String): String; <base/db.pas>: #6 <1537>: Function ParseSQL(SQL: String; DoCreate: Boolean): String; overload; <1538>: Function ParseSQL(SQL: String; DoCreate, EscapeSlash, EscapeRepeat : Boolean; ParameterStyle : TParamStyle): String; overload; <1539>: Function ParseSQL(SQL: String; DoCreate, EscapeSlash, EscapeRepeat : Boolean; ParameterStyle : TParamStyle; out ParamBinding: TParambinding): String; overload; <1540>: Function ParseSQL(SQL: String; DoCreate, EscapeSlash, EscapeRepeat : Boolean; ParameterStyle : TParamStyle; out ParamBinding: TParambinding; out ReplaceString : string): String; overload; <1541>: function ParseSQL(SQL: String; Options : TSQLParseOptions; ParameterStyle: TParamStyle; out ParamBinding: TParambinding; MacroChar: Char; out ReplaceString: string): String; <base/bufdataset_parser.pp>: #6 < 48>: function GetVariableInfo(VarName: string): TField; < 397>: function TBufDatasetParser.GetVariableInfo(VarName: string): TField; < 407>: procedure TBufDatasetParser.HandleUnknownVariable(VarName: string); < 486>: procedure TBufDatasetParser.ParseExpression(AExpression: string); <base/dbwhtml.pp>: #8 < 85>: Function FindColumn(ColumnName : String) : TTableColumn; < 86>: Function ColumnByName(ColumnName : String) : TTableColumn; < 133>: Function CreateAttr(Const ABGColor : String; A : THTMLAlign; VA : THTMLVAlign; CustomAttr : String) : String; < 136>: Procedure CreateColumns(FieldList : String); < 204>: function TTableColumns.FindColumn(ColumnName: String): TTableColumn; < 218>: function TTableColumns.ColumnByName(ColumnName: String): TTableColumn; < 346>: Function TTableProducer.CreateAttr(Const ABGColor : String; A : THTMLAlign; VA : THTMLVAlign; CustomAttr : String) : String; < 450>: procedure TTableProducer.CreateColumns(FieldList: String); <base/dbcoll.pp>: #6 < 34>: Function FindField(FN : String) : TField; < 35>: Function FieldByName(FN : String) : TField; < 41>: Function GetFromField(F : TField; ADefault : String) : String; overload; < 85>: function TFieldMap.FieldByName(FN: String): TField; < 96>: function TFieldMap.FindField(FN: String): TField; < 112>: function TFieldMap.GetFromField(F: TField; ADefault: String): String; <base/dsparams.inc>: #6 < 232>: function TParams.ParseSQL(SQL: String; DoCreate: Boolean): String; < 244>: function TParams.ParseSQL(SQL: String; DoCreate, EscapeSlash, < 256>: function TParams.ParseSQL(SQL: String; DoCreate, EscapeSlash, < 316>: function TParams.ParseSQL(SQL: String; DoCreate, EscapeSlash, < 328>: function TParams.ParseSQL(SQL: String; Options: TSQLParseOptions; ParameterStyle: TParamStyle; out ParamBinding: TParambinding; < 334>: function TParams.DoParseSQL(SQL: String; Options : TSQLParseOptions; ParameterStyle: TParamStyle; out <base/bufdataset.pas>: #6 < 561>: procedure SetIndexName(AValue: String); < 668>: procedure LoadFromFile(AFileName: string = ''; Format: TDataPacketFormat = dfDefault); < 669>: procedure SaveToFile(AFileName: string = ''; Format: TDataPacketFormat = dfBinary); <2402>: procedure TCustomBufDataset.SetIndexName(AValue: String); <3625>: procedure TCustomBufDataset.LoadFromFile(AFileName: string; Format: TDataPacketFormat); <3641>: procedure TCustomBufDataset.SaveToFile(AFileName: string; Format: TDataPacketFormat); <base/xmldatapacketreader.pp>: #1 < 135>: function GetNodeAttribute(const aNode : TDOMNode; AttName : String) : string; <base/sqlscript.pp>: #6 < 192>: Function ConvertWhiteSpace(S : String) : String; < 648>: Procedure Add(S : String); < 677>: function TCustomSQLScript.ProcessConditional(Directive: String; Param: String <base/csvdataset.pp>: #2 < 114>: procedure SaveToCSVFile(AFileName: string = ''); < 414>: procedure TCustomCSVDataset.SaveToCSVFile(AFileName: string); <sdf/sdfdata.pp>: #8 < 170>: procedure SetCodePage(AValue: String); < 232>: procedure SaveFileAs(strFileName : String); dynamic; < 341>: procedure TFixedFormatDataSet.SetCodePage(AValue: String); < 902>: procedure TFixedFormatDataSet.SaveFileAs(strFileName : String); < 909>: function TFixedFormatDataSet.StoreToBuf(Source: String): String; <1132>: function TSdfDataSet.StoreToBuf(Source: String): String; <sql/fpsqltree.pp>: #1 <4052>: Function SQLIndentStatement(S : String; Options: TSQLFormatOptions) : String; <sql/fpsqlparser.pas>: #4 < 74>: procedure Error(Msg : String); < 75>: procedure Error(Fmt : String; Args : Array of const); < 302>: procedure TSQLParser.Error(Msg: String); < 324>: procedure TSQLParser.Error(Fmt: String; Args: array of const); <codegen/fpcgtiopf.pp>: #1 < 136>: Function StripType(S : String) : string; <codegen/fpddpopcode.pp>: #4 < 160>: procedure TFPDDPopulateCodeGenerator.AddProcedure(AProcedureName : String; Lines: TStrings); < 182>: procedure TFPDDPopulateCodeGenerator.AddLine(ALine: String; Lines: TStrings); <codegen/fpcgtypesafedataset.pp>: #6 < 59>: procedure SetInterfaceGUID(AValue: String); < 60>: procedure SetInterfaceName(AValue: String); < 678>: S:='CreateQuery(aSQL : String; aConnection : %s; aTransaction : %s) : %s;'; < 696>: S:='GetQuery(aSQL : String; aConnection : %s; aTransaction : %s) : %s;'; < 894>: procedure TGenTypeSafeDatasetOptions.SetInterfaceGUID(AValue: String); < 904>: procedure TGenTypeSafeDatasetOptions.SetInterfaceName(AValue: String); <codegen/fpcgdbcoll.pp>: #2 < 459>: procedure TDDDBCollCodeGenerator.WriteFieldAssign(Strings : TStrings; F : TFieldPropDef; SrcName : String); <codegen/fpddcodegen.pp>: #23 < 98>: Function AddDef(AName : String) : TFieldPropDef; < 101>: Function IndexOfPropName(AName : String) : Integer; < 102>: Function IndexOfFieldName(AName : String) : Integer; < 103>: Function FindPropName(AName : String) : TFieldPropDef; < 104>: Function FindFieldName(AName : String) : TFieldPropDef; < 155>: procedure AddLn(Strings: TStrings; Line: String); overload; < 156>: procedure AddLn(Strings: TStrings; Fmt: String; Args: array of const); overload; < 158>: Function CreatePascalString(S : String; Quote : Boolean = True) : String; < 445>: Function MakeIdentifier (S : String) : String; < 446>: Function CreateString(S : String) : String; < 447>: Procedure CheckIdentifier(AValue : String; AllowEmpty : Boolean = True); < 451>: Function CreateString(S : String) : String; < 458>: Procedure CheckIdentifier(AValue : String; AllowEmpty : Boolean = True); < 497>: Function MakeIdentifier (S : String) : String; < 645>: function TFieldPropDefs.AddDef(AName: String): TFieldPropDef; < 689>: function TFieldPropDefs.IndexOfPropName(AName: String): Integer; < 696>: function TFieldPropDefs.IndexOfFieldName(AName: String): Integer; < 703>: function TFieldPropDefs.FindPropName(AName: String): TFieldPropDef; < 716>: function TFieldPropDefs.FindFieldName(AName: String): TFieldPropDef; <1392>: procedure TDDCustomCodeGenerator.AddLn(Strings : TStrings; Line : String); <1398>: procedure TDDCustomCodeGenerator.AddLn(Strings: TStrings; Fmt: String; <1405>: function TDDCustomCodeGenerator.CreatePascalString(S: String; Quote: Boolean): String; <1455>: Procedure MaybeAddUsesClause(S : String); <dbase/dbf_prsdef.pas>: #28 < 129>: constructor Create(AName: string; AExprFunc: TExprFunc); < 177>: constructor Create(AName: string; AVarType: TExpressionType; AExprFunc: TExprFunc); < 185>: constructor Create(AName: string; AValue: string); < 186>: constructor CreateAsDouble(AName: string; AValue: Double); < 208>: constructor Create(AValue: string); < 238>: constructor Create(AName: string; AValue: Boolean); < 263>: constructor Create(AName: string; AVarType: TExpressionType; AExprFunc: TExprFunc); < 271>: constructor Create(AName: string; AValue: PDouble); < 284>: constructor Create(AName: string; AValue: PPChar; AIsNull: PBoolean); < 296>: constructor Create(AName: string; AValue: PDateTimeRec); < 305>: constructor Create(AName: string; AValue: PInteger; AIsNull: PBoolean); < 316>: constructor Create(AName: string; AValue: PLargeInt); < 327>: constructor Create(AName: string; AValue: PBoolean); < 368>: constructor Create(AName, AShortName, ATypeSpec: string; AMinFuncArg: Integer; AResultType: TExpressionType; AExprFunc: TExprFunc; Descr: string); < 482>: constructor TExprWord.Create(AName: string; AExprFunc: TExprFunc); < 594>: constructor TConstant.Create(AName: string; AVarType: TExpressionType; AExprFunc: TExprFunc); < 618>: constructor TFloatConstant.CreateAsDouble(AName: string; AValue: Double); < 646>: constructor TStringConstant.Create(AValue: string); < 670>: constructor TBooleanConstant.Create(AName: string; AValue: Boolean); < 721>: constructor TVariable.Create(AName: string; AVarType: TExpressionType; AExprFunc: TExprFunc); < 745>: constructor TFloatVariable.Create(AName: string; AValue: PDouble); < 758>: constructor TStringVariable.Create(AName: string; AValue: PPChar; AIsNull: PBoolean); < 791>: constructor TDateTimeVariable.Create(AName: string; AValue: PDateTimeRec); < 804>: constructor TIntegerVariable.Create(AName: string; AValue: PInteger; AIsNull: PBoolean); < 820>: constructor TLargeIntVariable.Create(AName: string; AValue: PLargeInt); < 835>: constructor TBooleanVariable.Create(AName: string; AValue: PBoolean); < 993>: AExprFunc: TExprFunc; Descr: string); <dbase/dbf_parser.pas>: #8 < 56>: function GetVariableInfo(VarName: string): TDbfFieldDef; < 479>: function TDbfParser.GetVariableInfo(VarName: string): TDbfFieldDef; < 484>: procedure TDbfParser.HandleUnknownVariable(VarName: string); < 565>: procedure TDbfParser.ValidateExpression(AExpression: string); < 569>: procedure TDbfParser.ParseExpression(AExpression: string); <dbase/dbf_pgfile.pas>: #2 < 91>: procedure SetFileName(NewName: string); < 518>: procedure TPagedFile.SetFileName(NewName: string); <dbase/dbf_prscore.pas>: #27 < 56>: procedure ParseString(AnExpression: string; DestCollection: TExprCollection); < 71>: procedure CompileExpression(AnExpression: string); < 87>: function DefineFloatVariable(AVarName: string; AValue: PDouble): TExprWord; < 88>: function DefineIntegerVariable(AVarName: string; AValue: PInteger; AIsNull: PBoolean = nil): TExprWord; < 89>: // procedure DefineSmallIntVariable(AVarName: string; AValue: PSmallInt); < 91>: function DefineLargeIntVariable(AVarName: string; AValue: PLargeInt): TExprWord; < 93>: function DefineDateTimeVariable(AVarName: string; AValue: PDateTimeRec): TExprWord; < 94>: function DefineBooleanVariable(AVarName: string; AValue: PBoolean): TExprWord; < 95>: function DefineStringVariable(AVarName: string; AValue: PPChar; AIsNull: PBoolean = nil): TExprWord; < 98>: procedure Evaluate(AnExpression: string); < 99>: function AddExpression(AnExpression: string): Integer; < 103>: function GetFunctionDescription(AFunction: string): string; < 115>: //I: Integer; L: Large Integer (Int64); F: Double; S: String; B: Boolean < 326>: procedure TCustomExpressionParser.CompileExpression(AnExpression: string); < 783>: procedure TCustomExpressionParser.ParseString(AnExpression: string; DestCollection: TExprCollection); < 792>: procedure ReadConstant(AnExpr: string; isHex: Boolean); < 817>: procedure ReadWord(AnExpr: string); <1147>: function TCustomExpressionParser.DefineIntegerVariable(AVarName: string; AValue: PInteger; AIsNull: PBoolean): TExprWord; <1155>: function TCustomExpressionParser.DefineLargeIntVariable(AVarName: string; AValue: PLargeInt): TExprWord; <1163>: function TCustomExpressionParser.DefineDateTimeVariable(AVarName: string; AValue: PDateTimeRec): TExprWord; <1169>: function TCustomExpressionParser.DefineBooleanVariable(AVarName: string; AValue: PBoolean): TExprWord; <1175>: function TCustomExpressionParser.DefineFloatVariable(AVarName: string; AValue: PDouble): TExprWord; <1181>: function TCustomExpressionParser.DefineStringVariable(AVarName: string; AValue: PPChar; AIsNull: PBoolean): TExprWord; <1237>: procedure TCustomExpressionParser.Evaluate(AnExpression: string); <1246>: function TCustomExpressionParser.AddExpression(AnExpression: string): Integer; <1264>: function TCustomExpressionParser.GetFunctionDescription(AFunction: string): <dbase/dbf.pas>: #8 < 223>: procedure SetBackLink(NewBackLink: String); < 225>: procedure SetIndexName(AIndexName: string); < 388>: procedure OpenIndexFile(IndexFile: string); < 404>: procedure CopyFrom(DataSet: TDataSet; FileName: string; DateTimeAsString: Boolean; Level: Integer); <1690>: procedure TDbf.CopyFrom(DataSet: TDataSet; FileName: string; DateTimeAsString: Boolean; Level: Integer); <2258>: procedure TDbf.SetBackLink(NewBackLink: String); <2550>: procedure TDbf.SetIndexName(AIndexName: string); <2628>: procedure TDbf.OpenIndexFile(IndexFile: string); <dbase/dbf_lang.pas>: #2 < 527>: function GetLangId_From_LangName(LocaleStr: string): Byte; < 647>: function GetLangId_From_LangName(LocaleStr: string): Byte; <dbase/dbf_idxfile.pas>: #16 < 78>: procedure SetIndexName(NewName: string); < 79>: procedure SetExpression(NewField: string); < 292>: function CreateTempFile(BaseName: string): TPagedFile; < 363>: procedure PrepareRename(NewFileName: string); <1611>: procedure TMdx4Tag.SetTagName(NewName: string); <1696>: procedure TMdx7Tag.SetTagName(NewName: string); <1734>: procedure TDbfIndexParser.ValidateExpression(AExpression: string); <2040>: procedure WriteDBFileName(Header: PMdxHdr; HdrFileName: string); <2484>: function TIndexFile.CreateTempFile(BaseName: string): TPagedFile; <2793>: procedure TIndexFile.PrepareRename(NewFileName: string); <4145>: procedure TDbfIndexDef.SetIndexName(NewName: string); <4150>: procedure TDbfIndexDef.SetExpression(NewField: string); <dbase/dbf_common.pas>: #2 < 89>: procedure FindNextName(BaseName: string; var OutName: string; var Modifier: Integer); < 401>: procedure FindNextName(BaseName: string; var OutName: string; var Modifier: Integer); <dbase/dbf_dbffile.pas>: #14 < 120>: function GetIndexByName(AIndexName: string): TIndexFile; < 127>: procedure CloseIndex(AIndexName: string); < 128>: procedure RepageIndex(AIndexFile: string); < 129>: procedure CompactIndex(AIndexFile: string); < 139>: procedure Rename(DestFileName: string; NewIndexFileNames: TStrings; DeleteFiles: boolean); < 140>: function GetFieldInfo(FieldName: string): TDbfFieldDef; < 153>: procedure PackIndex(lIndexFile: TIndexFile; AIndexName: string); <1490>: procedure TDbfFile.Rename(DestFileName: string; NewIndexFileNames: TStrings; DeleteFiles: boolean); <1797>: function TDbfFile.GetFieldInfo(FieldName: string): TDbfFieldDef; <2763>: procedure TDbfFile.PackIndex(lIndexFile: TIndexFile; AIndexName: string); <2828>: procedure TDbfFile.RepageIndex(AIndexFile: string); <2849>: procedure TDbfFile.CompactIndex(AIndexFile: string); <2870>: procedure TDbfFile.CloseIndex(AIndexName: string); <3182>: function TDbfFile.GetIndexByName(AIndexName: string): TIndexFile; <json/extjsdataset.pp>: #6 < 77>: Function TExtJSJSONDataSet.StringToFieldType(S : String) : TFieldType; < 97>: Function TExtJSJSONDataSet.GetStringFieldLength(F : TJSONObject; AName : String; AIndex : Integer) : integer; < 339>: Function TExtJSJSONDataSet.ConvertDateFormat(S : String) : String; <json/fpjsondataset.pp>: #6 < 196>: Constructor Create(aDataset : TBaseJSONDataset; aFields : String; aValues : Variant; aOptions : TLocateOptions); < 470>: procedure TRecordComparer.ConstructItems(aFields : String); < 536>: constructor TRecordComparer.Create(aDataset: TBaseJSONDataset; aFields: String; aValues: Variant; aOptions: TLocateOptions); <1065>: function TBaseJSONDataSet.ConvertDateTimeField(S : String; F : TField) : TDateTime; <sqldb/sqldblib.pp>: #4 < 34>: procedure SetCType(AValue: String); < 36>: procedure SetLibraryName(AValue: String); < 64>: procedure TSQLDBLibraryLoader.SetCType(AValue: String); < 85>: procedure TSQLDBLibraryLoader.SetLibraryName(AValue: String); <sqldb/sqldbini.pp>: #4 < 41>: Procedure LoadFromIni(Const aIni: TCustomIniFile; ASection : String; aOptions : TSQLDBIniOptions); overload; < 47>: Procedure SaveToIni(Const aIni: TCustomIniFile; ASection : String; aOptions : TSQLDBIniOptions); overload; < 85>: procedure TSQLDBIniHelper.LoadFromIni(const aIni: TCustomIniFile; ASection: String; aOptions: TSQLDBIniOptions); < 186>: procedure TSQLDBIniHelper.SaveToIni(const aIni: TCustomIniFile; ASection: String; aOptions: TSQLDBIniOptions); <sqldb/sqldb.pp>: #29 < 122>: Comp : TComponent; AErrorCode: integer; ASQLState: string); overload; < 378>: function ExpandMacros( OrigSQL: String): String; < 543>: Function AddFilter(SQLstr : string) : string; < 834>: Procedure UnRegisterConnection(ConnectionName : String); < 835>: Function GetConnectionDef(ConnectorName : String) : TConnectionDef; < 902>: Comp: TComponent; AErrorCode: integer; ASQLState: string); <1223>: function TCustomSQLStatement.ExpandMacros( OrigSQL : String ) : String; <1404>: function TSQLConnection.StrToStatementType(s : string) : TStatementType; <1428>: procedure TSQLConnection.UpdateIndexDefs(IndexDefs : TIndexDefs; TableName : string); <1499>: procedure TSQLConnection.ExecuteDirect(SQL: String); <1505>: procedure TSQLConnection.ExecuteDirect(SQL: String; <2290>: function TSQLConnection.StartImplicitTransaction(trans: TSQLHandle; aParams: string): boolean; <2816>: function TCustomSQLQuery.AddFilter(SQLstr: string): string; <3706>: Function GetConnectionDef(ConnectorName : String) : TConnectionDef; <3742>: procedure UnRegisterConnection(ConnectionName: String); <3842>: function TSQLConnector.StrToStatementType(s: string): TStatementType; <3885>: ATransaction: TSQLTransaction; buf: string; AParams: TParams); <3966>: function TSQLConnector.StartDBTransaction(trans: TSQLHandle; aParams: string): boolean; <sqldb/mssql/mssqlconn.pp>: #10 < 187>: procedure Prepare(Buf: string; AParams: TParams); < 225>: procedure TDBLibCursor.Prepare(Buf: string; AParams: TParams); < 527>: function TMSSQLConnection.StrToStatementType(s: string): TStatementType; < 546>: function TMSSQLConnection.StartDBTransaction(trans: TSQLHandle; AParams: string): boolean; < 583>: ATransaction: TSQLTransaction; buf: string; AParams: TParams); < 947>: procedure TMSSQLConnection.UpdateIndexDefs(IndexDefs: TIndexDefs; TableName: string); <sqldb/mysql/mysqlconn.inc>: #9 < 391>: Procedure MySQLError(R : PMySQL; Msg: String; Comp : TComponent); < 429>: function TConnectionName.StrToStatementType(s : string) : TStatementType; < 672>: ATransaction: TSQLTransaction; buf: string;AParams : TParams); <1316>: procedure TConnectionName.UpdateIndexDefs(IndexDefs : TIndexDefs;TableName : string); <1440>: function TConnectionName.StartdbTransaction(trans: TSQLHandle; AParams : string): boolean; <sqldb/oracle/oracleconnection.pp>: #5 < 593>: ATransaction: TSQLTransaction; buf: string; AParams: TParams); < 776>: function TOracleConnection.StartDBTransaction(trans: TSQLHandle; AParams: string): boolean; <sqldb/odbc/odbcconn.pas>: #13 < 107>: procedure CheckResult(LastReturnCode:SQLRETURN; HandleType:SQLSMALLINT; AHandle: SQLHANDLE; ErrorMsg: string; const FmtArgs:array of const); < 108>: procedure CheckResult(LastReturnCode:SQLRETURN; HandleType:SQLSMALLINT; AHandle: SQLHANDLE; ErrorMsg: string); < 182>: procedure ODBCCheckResult(LastReturnCode:SQLRETURN; HandleType:SQLSMALLINT; AHandle: SQLHANDLE; const ConnectionCodePage: TSystemCodePage; ErrorMsg: string; const FmtArgs:array of const); < 261>: procedure TODBCConnection.CheckResult(LastReturnCode:SQLRETURN; HandleType:SQLSMALLINT; AHandle: SQLHANDLE; ErrorMsg: string; const FmtArgs:array of const); < 266>: procedure TODBCConnection.CheckResult(LastReturnCode:SQLRETURN; HandleType:SQLSMALLINT; AHandle: SQLHANDLE; ErrorMsg: string); < 322>: function TODBCConnection.StrToStatementType(s : string) : TStatementType; < 781>: procedure TODBCConnection.PrepareStatement(cursor: TSQLCursor; ATransaction: TSQLTransaction; buf: string; AParams: TParams); < 843>: function TODBCConnection.StartDBTransaction(trans: TSQLHandle; AParams:string): boolean; <1433>: procedure TODBCConnection.UpdateIndexDefs(IndexDefs: TIndexDefs; TableName: string); <sqldb/interbase/ibconnection.pp>: #12 < 95>: function InterpretTransactionParam(S: String; var TPB: AnsiChar; out AValue: String): Boolean; < 109>: procedure CheckError(ProcName : string; Status : PISC_STATUS;IgnoreErrors : Array of Longint); overload; < 110>: procedure CheckError(ProcName : string; Status : PISC_STATUS); overload; < 187>: procedure TIBConnection.CheckError(ProcName : string; Status : PISC_STATUS); < 193>: procedure TIBConnection.CheckError(ProcName : string; Status : PISC_STATUS; IgnoreErrors : Array of Longint); < 266>: function TIBConnection.InterpretTransactionParam(S: String; var TPB: AnsiChar; < 311>: function TIBConnection.StartDBTransaction(trans: TSQLHandle; AParams: string < 826>: procedure TIBConnection.PrepareStatement(cursor: TSQLCursor;ATransaction : TSQLTransaction;buf : string; AParams : TParams); <1618>: procedure TIBConnection.UpdateIndexDefs(IndexDefs : TIndexDefs;TableName : string); <sqldb/interbase/fbadmin.pp>: #51 < 57>: TIBOnOutput= procedure(Sender: TObject; msg: string; IBAdminAction: string) of object; < 86>: function CheckConnected(ProcName: string):boolean; < 87>: procedure CheckError(ProcName : string; Status : PISC_STATUS); < 89>: function GetIBLongint(buffer:string; var bufptr:integer):longint;overload; < 90>: function GetIBString(buffer:string; var bufptr:integer):string;overload; < 91>: function GetOutput(IBAdminAction:string):boolean; < 92>: function IBParamSerialize(isccode:byte;value:string):string; < 94>: function IBSPBParamSerialize(isccode:byte;value:string):string; < 108>: function Backup(Database,Filename:string;Options:TIBBackupOptions;RoleName:string=''):boolean; < 112>: function BackupMultiFile(Database:string;Filenames:TStrings;FileSize:longint; < 113>: Options:TIBBackupOptions;RoleName:string=''):boolean; < 118>: function Restore(Database,Filename:string;Options:TIBRestoreOptions;RoleName:string=''):boolean; < 124>: function RestoreMultiFile(Database:string;Filenames:TStrings; < 125>: Options:TIBRestoreOptions;RoleName:string=''):boolean; < 127>: function AddUser(UserName,Password:string;RoleName:string=''; < 128>: GroupName:string='';FirstName:string='';MiddleName:string=''; < 131>: function ModifyUser(UserName,Password:string;RoleName:string=''; < 132>: GroupName:string='';FirstName:string='';MiddleName:string=''; < 135>: function DeleteUser(UserName:string;RoleName:string=''):boolean; < 137>: function GetUser(UserName:string;var GroupName,FirstName,MiddleName, < 150>: function GetDatabaseStats(Database:string;Options:TIBStatOptions;TableNames:String = ''): boolean; < 213>: function TFBAdmin.IBParamSerialize(isccode: byte; value: string): string; < 227>: function TFBAdmin.IBSPBParamSerialize(isccode: byte; value: string): string; < 277>: function TFBAdmin.CheckConnected(ProcName: string): boolean; < 288>: procedure TFBAdmin.CheckError(ProcName: string; Status: PISC_STATUS); < 333>: function TFBAdmin.GetIBLongint(buffer: string; var bufptr: integer): longint; < 340>: function TFBAdmin.GetIBString(buffer: string; var bufptr: integer): string; < 351>: function TFBAdmin.GetOutput(IBAdminAction: string): boolean; < 478>: function TFBAdmin.BackupMultiFile(Database: string; Filenames: TStrings; < 479>: FileSize: longint; Options: TIBBackupOptions; RoleName: string): boolean; < 551>: Options: TIBRestoreOptions; RoleName: string): boolean; < 594>: function TFBAdmin.RestoreMultiFile(Database: string; Filenames: TStrings; < 595>: Options: TIBRestoreOptions; RoleName: string): boolean; < 633>: function TFBAdmin.AddUser(UserName, Password: string; RoleName: string; < 634>: GroupName: string; FirstName: string; MiddleName: string; LastName: string; < 662>: function TFBAdmin.ModifyUser(UserName, Password: string; RoleName: string; < 663>: GroupName: string; FirstName: string; MiddleName: string; LastName: string; < 691>: function TFBAdmin.DeleteUser(UserName: string; RoleName: string): boolean; < 705>: function TFBAdmin.GetUser(UserName: string; var GroupName, FirstName, < 832>: function TFBAdmin.GetDatabaseStats(Database:string;Options: TIBStatOptions; TableNames: String <sqldb/interbase/fbeventmonitor.pp>: #1 < 49>: TEventAlert = procedure(Sender: TObject; EventName: string; EventCount: longint; <sqldb/sqlite/sqlite3backup.pas>: #8 < 64>: SourceDBName:string='main';DestinationDBName:string='main'):boolean; < 66>: function Backup(Source:TSQLite3Connection;FileName:string;LockUntilFinished:boolean=true; < 69>: function Restore(FileName:string;Destination:TSQLite3Connection;LockUntilFinished:boolean=true; < 94>: LockUntilFinished: boolean; SourceDBName: string; DestinationDBName: string < 131>: function TSQLite3Backup.Backup(Source: TSQLite3Connection; FileName: string; < 132>: LockUntilFinished: boolean; SourceDBName: string): boolean; < 145>: function TSQLite3Backup.Restore(FileName: string; <sqldb/sqlite/sqlite3conn.pp>: #11 < 173>: Procedure Prepare(Buf : String; AParams : TParams); < 260>: Procedure TSQLite3Cursor.Prepare(Buf : String; AParams : TParams); < 397>: function TSQLite3Connection.StrToStatementType(s: string): TStatementType; < 405>: ATransaction: TSQLTransaction; buf: string; AParams: TParams); < 657>: Function ParseSQLiteDateTime(S : String) : TDateTime; < 817>: function TSQLite3Connection.StartDBTransaction(trans: TSQLHandle; aParams: string): boolean; <1019>: procedure TSQLite3Connection.UpdateIndexDefs(IndexDefs: TIndexDefs; TableName: string); <sqldb/postgres/pqeventmonitor.pp>: #1 < 48>: TEventAlert = procedure(Sender: TObject; EventName: string; EventCount: longint; <sqldb/postgres/pqconnection.pp>: #9 < 110>: procedure CheckResultError(var res: PPGresult; conn:PPGconn; ErrMsg: string); < 532>: function TPQConnection.StartImplicitTransaction(trans : TSQLHandle; AParams : string) : boolean; < 579>: function TPQConnection.StartDBTransaction(trans: TSQLHandle; AParams: string < 846>: procedure TPQConnection.PrepareStatement(cursor: TSQLCursor;ATransaction : TSQLTransaction;buf : string; AParams : TParams); <1450>: procedure TPQConnection.UpdateIndexDefs(IndexDefs : TIndexDefs;TableName : string); <sqldb/examples/sqldbexampleunit.pp>: #2 < 46>: procedure ExitWithError(s : string); < 58>: procedure ExitWithError(s : string); <datadict/fpddsqlite3.pp>: #2 < 55>: function TSQLDBSQLite3DDEngine.CreateConnection(AConnectString: String <datadict/fpddfb.pp>: #2 < 77>: function TSQLDBFBDDEngine.CreateConnection(AConnectString: String <datadict/fpddoracle.pp>: #2 < 57>: function TSQLDBORACLEDDEngine.CreateConnection(AConnectString: String <datadict/fpddmysql50.pp>: #2 < 57>: function TSQLDBMySql5DDEngine.CreateConnection(AConnectString: String <datadict/fpddmysql40.pp>: #2 < 56>: function TSQLDBMySql40DDEngine.CreateConnection(AConnectString: String <datadict/fpddmysql51.pp>: #2 < 57>: function TSQLDBMySql51DDEngine.CreateConnection(AConnectString: String <datadict/fpddmssql.pp>: #2 < 71>: function TSQLDBMSSQLDDEngine.CreateConnection(AConnectString: String <datadict/fpddodbc.pp>: #2 < 55>: function TSQLDBODBCDDEngine.CreateConnection(AConnectString: String <datadict/fpddmysql57.pp>: #2 < 57>: function TSQLDBMySql57DDEngine.CreateConnection(AConnectString: String <datadict/fpddmysql80.pp>: #2 < 57>: function TSQLDBMySql80DDEngine.CreateConnection(AConnectString: String <datadict/fpdddbf.pp>: #2 < 146>: function TDBFDDEngine.GetTableIndexDefs(ATableName: String; Defs: TDDIndexDefs <datadict/fpdatadict.pp>: #104 < 138>: Constructor Create(ATableName : string); < 142>: Function AddField(AFieldName: String = '') : TDDFieldDef; < 143>: Function IndexOfField(AFieldName : String) : Integer; < 144>: Function FindField(AFieldName : String) : TDDFieldDef; < 145>: Function FieldByName(AFieldName : String) : TDDFieldDef; < 186>: Constructor Create(ATableName : String); < 187>: Function AddDDIndexDef(AName : String) : TDDIndexDef; < 188>: function AddIndex (AName: String) : TDDIndexDef; < 189>: function IndexByName(AIndexName: String): TDDIndexDef; < 190>: function FindIndex(AIndexName: String): TDDIndexDef; < 191>: function IndexOfIndex(AIndexName: String): Integer; < 227>: Constructor Create(ATableName : String); < 228>: Function AddForeignKeyDef(AName : String) : TDDForeignKeyDef; < 256>: Function AddField(AFieldName : String = '') : TDDFieldDef; < 281>: Function AddTable(ATableName : String = '') : TDDTableDef; < 282>: Function IndexOfTable(ATableName : String) : Integer; < 283>: Function FindTable(ATableName : String) : TDDTableDef; < 284>: Function TableByName(ATableName : String) : TDDTableDef; < 320>: Function AddSequence(ASequenceName : String = '') : TDDSequenceDef; < 321>: Function IndexOfSequence(ASequenceName : String) : Integer; < 322>: Function FindSequence(ASequenceName : String) : TDDSequenceDef; < 323>: Function SequenceByName(ASequenceName : String) : TDDSequenceDef; < 367>: Function AddDomain(ADomainName : String = '') : TDDDomainDef; < 368>: Function IndexOfDomain(ADomainName : String) : Integer; < 369>: Function FindDomain(ADomainName : String) : TDDDomainDef; < 370>: Function DomainByName(ADomainName : String) : TDDDomainDef; < 393>: Procedure SaveToFile(AFileName : String; KeepBackup: Boolean = True); < 395>: Procedure LoadFromFile(AFileName : String); < 399>: Function FindFieldDef(FieldName : String; out TableName : String) : TDDFieldDef; < 400>: Function FindFieldDef(FieldName : String) : TDDFieldDef; < 483>: Procedure AddToStringLN(Var Res : String; S : String); < 484>: Procedure AddToString(Var Res : String; S : String); < 490>: Procedure AddFieldString(Var Res: String; S : String); < 618>: Function CreateDictionaryEngine(AName : String; AOWner : TComponent) : TFPDDEngine; < 949>: function CreateDictionaryEngine(AName: String; AOWner : TComponent): TFPDDEngine; <1164>: procedure TDDFieldDef.SaveToIni(Ini: TCustomInifile; ASection: String); <1198>: procedure TDDFieldDef.LoadFromIni(Ini: TCustomInifile; ASection: String); <1254>: constructor TDDFieldDefs.Create(ATableName: String); <1279>: function TDDFieldDefs.AddField(AFieldName: String): TDDFieldDef; <1299>: function TDDFieldDefs.IndexOfField(AFieldName: String): Integer; <1306>: function TDDFieldDefs.FindField(AFieldName: String): TDDFieldDef; <1319>: function TDDFieldDefs.FieldByName(AFieldName: String): TDDFieldDef; <1485>: function TDDTableDef.AddField(AFieldName: String): TDDFieldDef; <1490>: procedure TDDTableDef.SaveToIni(Ini: TCustomInifile; ASection: String); <1504>: procedure TDDTableDef.LoadFromIni(Ini: TCustomInifile; ASection: String); <1583>: function TDDTableDefs.AddTable(ATableName: String): TDDTableDef; <1603>: function TDDTableDefs.IndexOfTable(ATableName: String): Integer; <1610>: function TDDTableDefs.FindTable(ATableName: String): TDDTableDef; <1623>: function TDDTableDefs.TableByName(ATableName: String): TDDTableDef; <1658>: procedure TFPDataDictionary.SaveToFile(AFileName: String; KeepBackup: Boolean = True); <1685>: procedure TFPDataDictionary.SaveToIni(Ini: TCustomIniFile; ASection: String); <1693>: procedure TFPDataDictionary.LoadFromFile(AFileName: String); <1713>: procedure TFPDataDictionary.LoadFromIni(Ini: TCustomIniFile; ASection: String); <1790>: function TFPDataDictionary.FindFieldDef(FieldName: String; out TableName: String <1830>: function TFPDataDictionary.FindFieldDef(FieldName: String): TDDFieldDef; <2002>: function TFPDDEngine.RunQuery(SQL: String): Integer; <2008>: function TFPDDEngine.CreateQuery(SQL: String; DatasetOwner : TComponent): TDataset; <2013>: procedure TFPDDEngine.SetQueryStatement(SQL: String; AQuery: TDataset); <2018>: function TFPDDEngine.GetTableIndexDefs(ATableName: String; Defs: TDDIndexDefs <2085>: Procedure TFPDDSQLEngine.AddToStringLN(Var Res : String;S : String); <2093>: procedure TFPDDSQLEngine.AddToString(Var Res: String; S: String); <2115>: procedure TFPDDSQLEngine.AddFieldString(var Res: String; S: String); <2835>: procedure TDDIndexDef.SaveToIni(Ini: TCustomInifile; ASection: String); <2855>: procedure TDDIndexDef.LoadFromIni(Ini: TCustomInifile; ASection: String); <2907>: constructor TDDIndexDefs.Create(ATableName: String); <2914>: function TDDIndexDefs.AddDDIndexDef(AName: String): TDDIndexDef; <2919>: function TDDIndexDefs.AddIndex(AName: String): TDDIndexDef; <2962>: procedure TDDForeignKeyDef.SaveToIni(Ini: TCustomInifile; ASection: String); <2973>: procedure TDDForeignKeyDef.LoadFromIni(Ini: TCustomInifile; ASection: String); <3004>: constructor TDDForeignKeyDefs.Create(ATableName: String); <3011>: function TDDForeignKeyDefs.AddForeignKeyDef(AName: String): TDDForeignKeyDef; <3017>: function TDDIndexDefs.IndexOfIndex(AIndexName: String): Integer; <3024>: function TDDIndexDefs.FindIndex(AIndexName: String): TDDIndexDef; <3035>: function TDDIndexDefs.IndexByName(AIndexName: String): TDDIndexDef; <3064>: function TDDDomainDefs.AddDomain(ADomainName: String): TDDDomainDef; <3070>: function TDDDomainDefs.IndexOfDomain(ADomainName: String): Integer; <3079>: function TDDDomainDefs.FindDomain(ADomainName: String): TDDDomainDef; <3092>: function TDDDomainDefs.DomainByName(ADomainName: String): TDDDomainDef; <3139>: procedure TDDDomainDef.SaveToIni(Ini: TCustomInifile; ASection: String); <3151>: procedure TDDDomainDef.LoadFromIni(Ini: TCustomInifile; ASection: String); <3225>: procedure TDDSequenceDef.SaveToIni(Ini: TCustomInifile; ASection: String); <3234>: procedure TDDSequenceDef.LoadFromIni(Ini: TCustomInifile; ASection: String); <3263>: function TDDSequenceDefs.AddSequence(ASequenceName: String): TDDSequenceDef; <3269>: function TDDSequenceDefs.IndexOfSequence(ASequenceName: String): Integer; <3277>: function TDDSequenceDefs.FindSequence(ASequenceName: String): TDDSequenceDef; <3290>: function TDDSequenceDefs.SequenceByName(ASequenceName: String): TDDSequenceDef; <datadict/fpddmysql56.pp>: #2 < 57>: function TSQLDBMySql56DDEngine.CreateConnection(AConnectString: String <datadict/fpddmysql55.pp>: #2 < 57>: function TSQLDBMySql55DDEngine.CreateConnection(AConnectString: String <datadict/fpddpq.pp>: #2 < 55>: function TSQLDBPostGreSQLDDEngine.CreateConnection(AConnectString: String <datadict/fpddsqldb.pp>: #9 < 192>: function TSQLDBDDEngine.RunQuery(SQL: String): Integer; < 208>: function TSQLDBDDEngine.CreateQuery(SQL: String; DatasetOwner: TComponent < 221>: procedure TSQLDBDDEngine.SetQueryStatement(SQL: String; AQuery: TDataset); < 228>: function TSQLDBDDEngine.GetTableIndexDefs(ATableName: String; Defs: TDDIndexDefs <datadict/fpdddiff.pp>: #6 < 49>: procedure CompareTable (TableName: string; Kind: TDiffKindSet); < 51>: procedure CompareField (Source, Target: TDDFieldDefs; Fieldname: string; Kind: TDiffKindSet); < 53>: procedure CompareIndex (Source, Target: TDDIndexDefs; Indexname: string; Kind: TDiffKindSet); < 55>: procedure CompareDomain (Source, Target: TDDDomainDefs; DomainName: string; Kind: TDiffKindSet); < 57>: procedure CompareSequence (Source, Target: TDDSequenceDefs; SequenceName: string; Kind: TDiffKindSet); < 124>: procedure TCustomDDDiffer.CompareTable(TableName: string; Kind: TDiffKindSet); <datadict/fpddmysql41.pp>: #2 < 57>: function TSQLDBMySql41DDEngine.CreateConnection(AConnectString: String ```
issue