AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Not-Abfragewird 2mal ausgeführt

Ein Thema von Delbor · begonnen am 14. Mär 2017 · letzter Beitrag vom 15. Mär 2017
 
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#1

Not-Abfragewird 2mal ausgeführt

  Alt 14. Mär 2017, 14:43
Delphi-Version: XE8
Hi zusammen

Eben hab ich ein seltsames Problem etdeckt; zumindest hab ich keine Erklärung dafür und weiss deshalb auch nicht, wo ich den Fehler suchen könnte.

Beim Aufstarten wird erstmal die Createmethode des Datenmoduls aus dem OnCreateEvent des Hauptformulars aufgerufen:

Delphi-Quellcode:
procedure TFDMySQLDml.DataModuleCreate(Sender: TObject);
  var LIndent : String;
begin
  LIndent := ' - ';
  CM_First.ProcedureReport.Add('PROCEDURE TFDMySQLDml.DataModuleCreate');
  CM_First.ProcedureReport.Add('--------------------------------------');
  FQueryResultList := TObjectList.Create;
  TPicture.RegisterFileFormat('NEF','NEF Format',TWICImage);
  FReportlist := TStringlist.Create;
  FSessionVarList := TStringlist.Create;
  FCategoryBildList := TDataObjectList<TQueryResultClass>.Create();
  FCategoryList := TDataObjectList<TQueryResultClass>.Create();
  FPathList := TStringList.Create;
  FMySQLCorrespondent := TMySQLCorrespondent.Create(Self); // TFDMySQLDml
  FHost := 'localhost';
  FDataBase := 'contentmasterdata';
  FServerDB := 'performance_schema';
  FPort := '3306';
  if not DefineContentmasterConnection then //<==
  begin;
    ShowMessage(' Die Verbindung konnte nicht hergestellt werden');
    // An dieser Stellle muss geeignet reagiert werden können
  end;
  FPerformanceSchemaTables := TStringList.Create;
  ShowCharactersets; //TFDMySQLDml Muss nach TMysqlkorrespondent verlagert werden
  GetMaxAllowedPacket;
end;
An der bezeichneten Stelle wird die Booleanfunktion aufgerufen:
Delphi-Quellcode:
 function TFDMySQLDml.DefineContentmasterConnection: Boolean;
  var LIndent : String;
begin
  if (FHost <> 'localhost') or (FDataBase <> 'contentmasterdata') then
    Exit;
  LIndent := ' - ';
  FDConnectionMySQL.Close;
  FDConnectionMySQL.Params.Clear;
  FDConnectionMySQL.Params.Add('DriverID=MySQL');
  FDConnectionMySQL.Params.Add('Server=' + FHost);
  FDConnectionMySQL.Params.Add('Port=' + FPort);
  FDConnectionMySQL.Params.Add('Database=contentmasterdata');
  FDConnectionMySQL.Params.Add('User_Name=root');
  FDConnectionMySQL.Open;
  Result := True;
end;
Anschliessend kehrt die Programmfunktion zurück und überspringt korrekterweise die Showmessage-Anweisung - die Verbindung ist also hergestellt.
Im weiteren Verlauf wird ShowCharactersets und MaxallowedPacket aufgerufen.
Das Problem ist: DefineContentmasterConnection liefert False zurück!

Inzwischen vermute ich meine Verbindungsdefinitionen als Ursache. Im Anhang ein Jpeg der OI-Einstellungen der Connection-Komponente:
Ansonsten: Was mache ich falsch?

Gruss
Delbor
Angehängte Grafiken
Dateityp: jpg FDConnectionMySQL 2.JPG (51,0 KB, 23x aufgerufen)
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz