我正在尝试创建一个小应用程序,您可以将区,商店和员工保存到数据库中。现在我在所有类构造函数(TAdoConnection
,TDistrict.Create
等)中创建一个新的TEmployee.Create
并执行查询。但必须有另一种方式。我考虑在更高级别创建TAdoConnection
并将其作为参数传递给构造函数,但我也不认为这是正确的方法。任何意见都将不胜感激。
答案 0 :(得分:-1)
也许这会对你有所帮助:
unit Unit1;
interface
type
TController = class(TPersistent)
private
FConnecteur: TAdoConnection;
procedure SetConnecteur(const Value: TAdoConnection);
public
constructor Create; virtual;
destructor Destroy; override;
property Connecteur: TAdoConnection read FConnecteur write SetConnecteur;
end;
TDistrict = class(TController)
public
constructor Create(AConnection: TAdoConnection);
end;
(*the same think with TEmployee and other class*)
implementation
constructor TController.Create;
begin
inherited Create;
//Self.FConnecteur:= TAdoConnection.Create(); {if u want to create single connection *1}
end;
destructor TController.Destroy;
begin
//Self.FConnecteur.free; (*1 if single connection was created *)
inherited Destroy;
end;
procedure TController.SetConnecteur(const Value: TAdoConnection);
begin
FConnecteur := Value;
end;
constructor TDistrict.Create(AConnection: TAdoConnection);
begin
inherited Create;
Self.FConnecteur:= AConnection;
end;
end.