FireDAC Kismindan MS Sql Veritabanina Baglanmak
Merhaba arkadaþlar bu makalemizde Data Explorer penceresinde bulunan FireDAC altindaki Microsoft SQL Server dan baglanti nasil yapiliri anlatacagim.
Data Explorer penceresinde ilk once Microsoft SQL Server klasorune sag tiklayip, Add New Connection týklayalim.
Sekil 1
Sonra baglanti ismini yazip OK butonuna tiklayalim.
Sekil 2
Acilan FireDAC Connection Editor penceresini asagidaki gibi dolduralim. Burada Encrypt kismini No seciniz. Sonra Yukarida solda bulunan Test butonuna tiklayalim.
Sekil 3
NOT: Eger baglantida hata olursa SQL Server Management Surumu 19 olabilir. Bu durumda asagidaki linkten Ole DB yi download ederek bilgisayariniza kurmaniz gerekebilir.
Download Microsoft OLE DB Driver for SQL Server
Test kisminda asagidaki gibi bir ekran gelmelidir. Burada OK tusuna basiniz.
Sekil 4
“Connection established successfully” mesaji geldiyse, Sql veritabanina basarili bir sekilde baglanmis oldunuz.
Sekil 5
Data Explorer penceresinde Microsoft SQL Server klasoru altinda tablonuz basarili bir sekilde oluþtu.
Sekil 6
Tablo uzerinden formunuza surukle birak metoduyla connection ve table nesnelerinizi asagidaki gibi olusturun.
Sekil 7
Object Inspector kismindan tablonuzu secin baglanti ve active durumunu asagidaki gibi yapiniz.
Sekil 8
Object Inspector kismindan Connection nesnesinin Connected ozelligini True yapiniz.
Sekil 9
Palette kýsminda formunuza DataSource ekleyiniz. Object Inspector kismindan Datasource un DataSet ozelligini Tablonuza ilisiklendiriniz.
Sekil 10
Palette kýsminda formunuza DBGrid ekleyiniz. Object Inspector kismindan Datasource kisminda formunuza daha once eklediginiz DataSource nesnesini ilisiklendiriniz.
Sekil 11
Projemizi calistirdigimizda ekranda asagidaki gibi bir cikti alacagiz.
Sekil 12
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, FireDAC.Stan.Intf,
FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf,
FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys,
FireDAC.Phys.MSSQL, FireDAC.Phys.MSSQLDef, FireDAC.VCLUI.Wait,
FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,
FireDAC.Comp.DataSet, FireDAC.Comp.Client, Vcl.Grids, Vcl.DBGrids;
type
TColorDBGrid = Class(TCustomDBGrid);
TForm1 = class(TForm)
DBGrid1: TDBGrid;
StaffConnection: TFDConnection;
DataSource1: TDataSource;
StaffTable: TFDQuery;
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
w:integer;
begin
w := 5+DBGrid1.Canvas.TextExtent(Column.Field.DisplayText).cx;
if w>column.Width then Column.Width := w;
with TColorDBGrid(Sender) do begin
if DataLink.ActiveRecord = Row - 1 then begin
Canvas.Brush.Color := clRed;
Canvas.Font.Color := clWhite;
Canvas.Font.Size:=13;
Canvas.Font.Style:=[fsBold];
end
else begin
Canvas.Brush.Color := clWindow;
Canvas.Font.Color := clWindowText;
end;
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
procedure TForm1.FormActivate(Sender: TObject);
var
i:integer;
begin
for I := 0 to DBGrid1.Columns.Count - 1 do
DBGrid1.Columns[i].Width := 5 + DBGrid1.Canvas.TextWidth(DBGrid1.Columns[i].title.caption)
end;
end.
Bir makalenin daha sonuna geldik. Bir sonraki makalede görüþmek üzere. Bahadýr ÞAHÝN