Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Klassenproblem bei MySQL über Mysql-direct library (https://www.delphipraxis.net/114347-klassenproblem-bei-mysql-ueber-mysql-direct-library.html)

Dragon27 23. Mai 2008 19:04

Datenbank: MySQL • Version: 5 • Zugriff über: Mysql-direct library

Klassenproblem bei MySQL über Mysql-direct library
 
Hallo, habe folgenden Code:


Meine Klassenunit:
Delphi-Quellcode:
unit USQL;

interface

uses umysqlvio, uMysqlCT, uMysqlClient, uMysqlHelpers;

type
TSQLVerbindung=class
  private


  public
  FMysql: TMysqlClient;
  FResult: TMysqlResult;
  Function Connect(Host,User,Passwort:String;DB:String='Test'):String;
  Function Disconnect():String;
  destructor Destroy();
  constructor Create();
end;


{$I mysqlinc.inc}

implementation


Function TSQLVerbindung.Connect(Host,User,Passwort:String;DB:String='Test'):String;
begin

  FMysql.Host :=host;
  FMysql.port := 3306;
  FMysql.user :=user;
  FMysql.password := Passwort;
  FMysql.UnixSocket := '';
  FMysql.Db := DB; // Datenbank auf dem Server
  FMysql.UseNamedPipe := false;
  FMysql.UseSSL := false;
  FMysql.Compress := true;
  FMysql.TrySockets := false;
  if FMysql.Connect then
    Result:='SQL-Verbindung wurde hergestellt!'
  else
    Result:='Fehler beim Verbinden: '+FMysql.LastError;

end;

Function TSQLVerbindung.Disconnect():String;
begin
 if FMysql.Connected then begin
    FMysql.close;
    Result:='Verbindung getrennt';
 end
  else
    Result:='Nicht verbunden!';
end;


constructor TSQLVerbindung.Create();
begin
  inherited Create;
  FMysql := TMysqlClient.create;
end;

destructor TSQLVerbindung.destroy();
begin
  inherited destroy;
end;




end.

Meine Testunit:
Delphi-Quellcode:
var
  Form1: TForm1;
  sSQL:TSqlverbindung;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
ssql.Create;
showmessage(ssql.Connect('localhost','root','123456'));
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
showmessage(ssql.Disconnect);
sleep(2000);
ssql.Destroy;
end;
Leider kommt beim Ausführen immer eine Zugriffsverletzung :-( Vielleicht könnt Ihr mir helfen?

mkinzler 23. Mai 2008 19:06

Re: Klassenproblem bei MySQL über Mysql-direct library
 
Delphi-Quellcode:
ssql := TSqlverbindung.Create;

DeddyH 23. Mai 2008 19:07

Re: Klassenproblem bei MySQL über Mysql-direct library
 
Delphi-Quellcode:
ssql.Create;
Das sollte wohl
Delphi-Quellcode:
ssql := TSqlverbindung.Create;
heißen.

[edit] Immer dieser mkinzler :? [/edit]

Dragon27 23. Mai 2008 19:11

Re: Klassenproblem bei MySQL über Mysql-direct library
 
Hallo,

danke! Das war das Problem ;-)

Gruß

Andy


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:29 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