Delphi Dünyası Facebook'ta

Kodbank İndir

! CODEBANK 2012 !

İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.

Gönderen Konu: MyDAC ile MySql Veritabanına Bağlantı  (Okunma sayısı 369 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı dynamo

  • Delphi 3 Level 4
  • ****
  • İleti: 137
  • Rep: +3/-1
MyDAC ile MySql Veritabanına Bağlantı
« : 26 Eylül 2011 10:42:27 »
MyDAC5.20 bileşenlerinden MyConnection1 kullanarak bir mysql veritabanına bağlantı işlemini yapalım.Animate1 ile bağlantı gerçekleşene kadar kullanıcının beklemesini sağlayabilir, ini dosyadan ayarları okuyup kaydedebiliriz.



Kod: [Seç]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,IniFiles, StdCtrls, MyBackup, DADump, MyDump, ComCtrls, Buttons,
  DB, DBAccess, MyAccess, ExtCtrls,ShellApi, DAScript, MyScript;

type
  TForm1 = class(TForm)
    MyConnection1: TMyConnection;
    BitBtn2: TBitBtn;
    GroupBox1: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    BitBtn3: TBitBtn;
    Animate1: TAnimate;
    GroupBox2: TGroupBox;
    Label5: TLabel;
    Label6: TLabel;
    Edit5: TEdit;
    Edit6: TEdit;
    BitBtn1: TBitBtn;
    procedure BitBtn2Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure MyConnection1BeforeConnect(Sender: TObject);
    procedure MyConnection1AfterConnect(Sender: TObject);
    procedure MyConnection1Error(Sender: TObject; E: EDAError;
      var Fail: Boolean);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
    procedure ConnectMYSQL();
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses  Unit2;

{$R *.dfm}



procedure TForm1.ConnectMYSQL();
var username,password,database,server:string;
begin

   username:=  trim(Edit3.Text);
   password:=  trim(Edit4.Text);
   database:=  trim(Edit5.Text);
   server:=    trim(Edit6.Text);

   MyConnection1.Close;
   MyConnection1.Username:=username;
   MyConnection1.Password:=password;
   MyConnection1.Database:=database;
   MyConnection1.Server  :=server;
   MyConnection1.Port:=3306; //MYSQL TCP Port
   MyConnection1.LoginPrompt:=false;
   try
      MyConnection1.Open;
      Application.MessageBox('Bağlandı....', 'MESAJ',MB_OK);
   except
      Application.MessageBox('Veritabanına bağlanamadı....', 'UYARI',MB_OK);
   end;


end;

procedure TForm1.FormShow(Sender: TObject);
var
   IniDosya:TIniFile;
begin
   IniDosya:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'Settings.ini');
   try
      Edit3.Text:=IniDosya.ReadString('MySql','User','');
      Edit4.Text:=IniDosya.ReadString('MySql','Password','');
      Edit5.Text:=IniDosya.ReadString('Login','Database','');
      Edit6.Text:=IniDosya.ReadString('Login','Server','');
   finally
      IniDosya.Free;
   end;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
var
   IniDosya:TIniFile;
   s:string;
begin
   IniDosya:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'Settings.ini');
   try
      IniDosya.WriteString('User',trim(Edit3.Text),s);
      IniDosya.WriteString('Password',trim(Edit4.Text),s);
      IniDosya.WriteString('Database',trim(Edit5.Text),s);
      IniDosya.WriteString('Server',trim(Edit6.Text),s);
   finally
      IniDosya.Free;
   end;

   showmessage('Ayarlar Kaydedildi');
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
begin

   try
      Animate1.Visible:=true;
      BitBtn3.Enabled:=false;
      BitBtn2.Enabled:=false;
      Screen.Cursor:=crHourGlass;
      ConnectMYSQL();
   finally
      BitBtn3.Enabled:=true;
      BitBtn2.Enabled:=true;
      Screen.Cursor:=crDefault;
      Animate1.Visible:=false;
   end;
end;

procedure TForm1.MyConnection1BeforeConnect(Sender: TObject);
begin
   Application.ProcessMessages;
   Animate1.Visible:=True;
   Animate1.Active:=True;

end;

procedure TForm1.MyConnection1AfterConnect(Sender: TObject);
begin
   Application.ProcessMessages;
   Animate1.Reset;
end;

procedure TForm1.MyConnection1Error(Sender: TObject; E: EDAError;
  var Fail: Boolean);
begin
   Application.ProcessMessages;
   Animate1.Reset;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
close;
end;

end.

örnek uygulama ektedir.