Delphi Can

Orjinalini görmek için tıklayınız: Mysql db'ye bağlantı kurma
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Merhaba, 

Localhost Mysql db'ye direk bağlantı kurmak istiyorum, Fakat aşağıdaki hatayı alıyorum.
Bu sorunu nasıl çözebilirim?


procedure TForm1.Button1Click(Sender: TObject);
begin
  With FDPhysMySQLDriverLink1 do
  begin
    Release;
    DriverID := 'MySQL';
    VendorLib := ExtractFilePath(Application.Exename) + '\libmysql.dll';
    With FDConnection1 do
    begin
      LoginPrompt := False;
      Params.Clear;
      Params.Values['DriverID'] := 'MySQL';
      Params.Values['Server'] :='C:\Users\Dostk\Desktop\SMARTAPP\Win32\Debug\DBLER';
      Params.Values['Port'] := '3306';
      Params.Values['Database'] := 'GENEL';
      Params.Values['CharacterSet'] := 'utf8';
      Connected := True;
    end;
  end;
end;

First chance exception at $744608F2. Exception class EMySQLNativeException with message '[FireDAC][Phys][MySQL] Unknown MySQL server host 'C:\Users\Dostk\Desktop\TESTAPP\Win32\Debug\SMARTAPP(0)'.

Forumda ve webde araştırdım ama çözemedim bir türlü.
Birde böyle denermisiniz?
procedure TForm1.Button1Click(Sender: TObject);
begin
With FDPhysMySQLDriverLink1 do
 begin
   Release; // Var olan bağlantıları kapatır.
   DriverID     := 'MySQL';
   VendorLib    := ExtractFilePath(Application.Exename) + '\LIBMYSQLD.DLL'; // Embedded dll
   EmbeddedArgs.Text := ''
   + '--basedir='  + ExtractFilePath(Application.Exename) +';'
   //'datadir' ile verilen yerde bulunan her alt klasör birer Veritabanıdır.
   // onların da altında fiziksel tablolar olacak.
   + '--datadir='  + ExtractFilePath(Application.Exename) +'\DBLER;'
   + '--language=' + ExtractFilePath(Application.Exename) +';'
   + '--skip-innodb;'
   + '--skip-networking;'
   ;
 end;

 With FDConnection1 do
 begin
   Connected   := False;
   LoginPrompt := False;
   Params.Clear;
     Params.Values['DriverID']     := 'MySQL';
     Params.Values['CharacterSet'] := 'utf8';
     // Database ise yukarıda verilen "datadir" içindeki klasördür...
     Params.Values['Database']     := 'GENEL';
   Connected     := True;
 end;
end;

Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
(05-04-2018, Saat: 11:40)faktoral Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Birde böyle denermisiniz?
procedure TForm1.Button1Click(Sender: TObject);
begin
With FDPhysMySQLDriverLink1 do
 begin
   Release; // Var olan bağlantıları kapatır.
   DriverID     := 'MySQL';
   VendorLib    := ExtractFilePath(Application.Exename) + '\LIBMYSQLD.DLL'; // Embedded dll
   EmbeddedArgs.Text := ''
   + '--basedir='  + ExtractFilePath(Application.Exename) +';'
   //'datadir' ile verilen yerde bulunan her alt klasör birer Veritabanıdır.
   // onların da altında fiziksel tablolar olacak.
   + '--datadir='  + ExtractFilePath(Application.Exename) +'\DBLER;'
   + '--language=' + ExtractFilePath(Application.Exename) +';'
   + '--skip-innodb;'
   + '--skip-networking;'
   ;
 end;

 With FDConnection1 do
 begin
   Connected   := False;
   LoginPrompt := False;
   Params.Clear;
     Params.Values['DriverID']     := 'MySQL';
     Params.Values['CharacterSet'] := 'utf8';
     // Database ise yukarıda verilen "datadir" içindeki klasördür...
     Params.Values['Database']     := 'GENEL';
   Connected     := True;
 end;
end;

Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.

Bu kodları incelemiştim. Muharrem hocanın paylaşmış olduğu kodlar. Biraz kafam karıştı.

1. LIBMYSQLD.DLL   D'yi anlamadım.
2. exe ile birlikte errmsg.sys olması lazım bu nedir? bilmiyorum.
3. exeyi çalıştırdığımda DESKTOP-E0EJ4BC bir dosya oluşuyor bu nedir?
DESKTOP-E0EJ4BC sizin bilgisayarınızın adı.

Doğrudur. Muharrem hocanın paylaşmış olduğu kodlar.

LIBMYSQLD.DLL Embedded dll

Sonuç olarak bağlanıp. Sorgu çalıştırabiliyormusunuz?