<Mayıs>
PSÇPCCP
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678
 
Kayıt Ol

. .Net Framework
. ADO.Net
. ASP.Net, Web Servisleri
. C#, Visual C#
. Delphi.Net
. Diğer
. Mobil.Net
. NetFx
. VB.Net
. Veritabanları
. Visual Studio
. XML

. .Net Framework
. ADO.Net
. ASP.Net, Web Servisleri
. C#, Visual C#
. Delphi.Net
. Diğer
. Mobil.Net
. NetFx
. VB.Net
. Veritabanları
. Visual Studio
. XML

 
 
 
Delphi 8 ile Database Bağlantısı 
Yazar: Evren AYAN  - Yazara ait tüm yazılar
Ders Özeti: Web programlamanın yaşadığı devrimin ardından database bağlantısız bir web uygulaması düşünmek neredeyse imkansız hale geldi. 
Okunma: 12098
MaxiPuan: 10945
Yazı Kategorisi: Delphi.Net

Ardaşına Tavsiye Et - Yazdırılabilir Biçim



Bu alana reklam verebilirsiniz

New Page 1

Delphi 8 .Net İle Database Bağlantılı Uygulama Geliştirmek

Daha önceki yazılarımızda Delphi 8 .Net'e kısa bir giriş ve ilk uygulamanın ardından Delphi'nin script dili olarak kullanımına değinmiştik. Web programlamanın yaşadığı devrimin ardından database bağlantısız bir web uygulaması düşünmek neredeyse imkansız hale geldi. Bu sebep ile bu yazımızda Delphi 8 ile SQL Server ' a bağlanacak ve DataGrid yardımıyla Authors tablosundaki verileri ekrana getireceğiz.

Delphi 8 de Visual Studio gibi ister kendi yazacağınız kodlar yardımıyla nesnelerinizi oluşturup database bağlantısını manuel yapar isterseniz wizard yardımı ile Oracle,Access,SQL Server,Interbase ve DB2 database lere bağlanırsınız.

             

Uygulamamız için Design ekranına bir buton ve DataGrid ekliyoruz. Ayrıca database bağlantısı ve veri çekmek için SqlDataAdapter,SqlConnection ve DataSet nesnelerini ekranımıza taşıyoruz.

Ardından yazacağımız kod;

 

unit WebForm1;

interface

uses
System.Collections, System.ComponentModel,
System.Data, System.Drawing, System.Web, System.Web.SessionState,
System.Web.UI, System.Web.UI.WebControls, System.Web.UI.HtmlControls,
System.Data.SqlClient, System.Globalization;

type
TWebForm1 = class(System.Web.UI.Page)
{$REGION 'Designer Managed Code'}
strict private
procedure InitializeComponent;
procedure Button1_Click(sender: System.Object; e: System.EventArgs);
{$ENDREGION}
strict private
procedure Page_Load(sender: System.Object; e: System.EventArgs);
strict protected
sqlSelectCommand1: System.Data.SqlClient.SqlCommand;
sqlInsertCommand1: System.Data.SqlClient.SqlCommand;
sqlUpdateCommand1: System.Data.SqlClient.SqlCommand;
sqlDeleteCommand1: System.Data.SqlClient.SqlCommand;
MyDataAdapter: System.Data.SqlClient.SqlDataAdapter;
MyConnection: System.Data.SqlClient.SqlConnection;
MyDataSet: System.Data.DataSet;
DataGrid1: System.Web.UI.WebControls.DataGrid;
Button1: System.Web.UI.WebControls.Button;
procedure OnInit(e: EventArgs); override;
private
{ Private Declarations }
public
{ Public Declarations }
end;

implementation

{$REGION 'Designer Managed Code'}
/// <summary>
/// Required method for Designer support -- do not modify
/// the contents of this method with the code editor.
/// </summary>
procedure TWebForm1.InitializeComponent;
begin
Self.sqlSelectCommand1 := System.Data.SqlClient.SqlCommand.Create;
Self.sqlInsertCommand1 := System.Data.SqlClient.SqlCommand.Create;
Self.sqlUpdateCommand1 := System.Data.SqlClient.SqlCommand.Create;
Self.sqlDeleteCommand1 := System.Data.SqlClient.SqlCommand.Create;
Self.MyDataAdapter := System.Data.SqlClient.SqlDataAdapter.Create;
Self.MyConnection := System.Data.SqlClient.SqlConnection.Create;
Self.MyDataSet := System.Data.DataSet.Create;
(System.ComponentModel.ISupportInitialize(Self.MyDataSet)).BeginInit;
Include(Self.Button1.Click, Self.Button1_Click);
//
// MyDataAdapter
//
Self.MyDataAdapter.DeleteCommand := Self.sqlDeleteCommand1;
Self.MyDataAdapter.InsertCommand := Self.sqlInsertCommand1;
Self.MyDataAdapter.SelectCommand := Self.sqlSelectCommand1;
Self.MyDataAdapter.UpdateCommand := Self.sqlUpdateCommand1;
//
// MyDataSet
//
Self.MyDataSet.DataSetName := 'NewDataSet';
Self.MyDataSet.Locale := System.Globalization.CultureInfo.Create('en-US');
Include(Self.Load, Self.Page_Load);
(System.ComponentModel.ISupportInitialize(Self.MyDataSet)).EndInit;
end;
{$ENDREGION}

procedure TWebForm1.Page_Load(sender: System.Object; e: System.EventArgs);
begin
// TODO: Put user code to initialize the page here
end;

procedure TWebForm1.OnInit(e: EventArgs);
begin
//
// Required for Designer support
//
InitializeComponent;
inherited OnInit(e);
end;

procedure TWebForm1.Button1_Click(sender: System.Object; e: System.EventArgs);
var
MyConnection: SqlConnection;
MyDataSet: DataSet;
MyDataAdapter: SqlDataAdapter;
begin
MyConnection := SqlConnection.Create('Server=localhost;database=pubs;User ID=sa;Password=123' );
MyConnection.Open();
MyDataAdapter := SqlDataAdapter.Create('Select * From Authors', MyConnection);
MyDataSet := DataSet.Create();
MyDataAdapter.Fill(MyDataSet, 'Products');
DataGrid1.DataSource := MyDataSet;
DataGrid1.DataBind();
end;


end.

Görüldüğü üzere Delphi .Net ihtiyacımız olan kodların bir çoğunu kendisi oluşturdu bizim yerimize. Burada incelememiz gereken kısım Buton1'in OnClick olayında yazdığımız kod bloğu.

 

procedure TWebForm1.Button1_Click(sender: System.Object; e: System.EventArgs);
var
MyConnection: SqlConnection;
MyDataSet: DataSet;
MyDataAdapter: SqlDataAdapter; //Kullanacağımız değişkenleri tanımlıyoruz.
begin
MyConnection := SqlConnection.Create('Server=localhost;database=pubs;User ID=sa;Password=123' ); //Yeni bir bağlantı yaratıyoruz.
MyConnection.Open(); //Bağlantımızı açıyoruz.
MyDataAdapter := SqlDataAdapter.Create('Select * From Authors', MyConnection); //Yeni bir DataAdapter yaratıyoruz ve Autohors tablosuna bağlanıyoruz.
MyDataSet := DataSet.Create(); // Yeni bir dataset yaratıyoruz.
MyDataAdapter.Fill(MyDataSet, 'Products'); //DataSet imizi DataAdapter ın çektiği veri ile dolduruyoruz.
DataGrid1.DataSource := MyDataSet; //DataGrid imizin içini DataSet teki veri ile dolduruyoruz.
DataGrid1.DataBind();
end;

Veekran çıktımız:

Bu yazımız Delphi 8 .Net'e giriş niteliği taşıyan son yazımızdı. Bundan sonraki yazılarımızda biraz daha ileri seviye uygulamalar ile ilgileneceğiz.

Aşağıdaki bağlantılarda Borland’’ın bu yeni teknolojileri ve delphi.net ile ilgili bilgilere ulaşabilirsiniz.

http://www.borland.com/delphi_net/pdf/delphi_net8_datasheet.pdf

http://www.borland.com/news/press_releases/2003/12_19_03_delphi8_for_dotnet_shipping.html

Eco object kullanım örnekleri için kaynak adresler :

http://www.borland.com/delphi_net/architect/eco/tutorial/tutorial1.html

http://www.borland.com/delphi_net/architect/eco/tutorial/tutorial2.html

Bu yazımız için oluşturduğumuz projeyi indirmek için tıklayınız.

Evren AYAN
MaxiASP.Net
evren@maxiasp.net

Bu dersi değerlendirin

İlgili Dersler
  Borland Delphi 2005 - WinForms Örnek Uygulama
  Borland Delphi 2005 / Kurulum
  Borland Delphi 2005'i Kişiselleştirme
  Delphi 8 & XML Web Servisleri I
  Delphi 8 & XML Web Servisleri II
  Delphi 8 .Net İle Uygulama Geliştirmek
  Delphi'nin Script Dili Olarak Kullanılması
  Önizleme : Borland Delphi 2005
  Delphi 8 & XML Web Servisleri II
  .Net Framework ve Kurulumu
  Borland Delphi 2005 - WinForms Örnek Uygulama
  Borland Delphi 2005 / Kurulum
  C#'a Giriş II
  Delphi 8 .Net İle Uygulama Geliştirmek
  IEWebController - MultiPage
  Linux Üzerinde .Net Çalıştırmak
  Önizleme : Borland Delphi 2005
  Windows Presentation Foundation'a Giriş
  Delphi 8 & XML Web Servisleri I
  Delphi 8 & XML Web Servisleri II
  Delphi 8 .Net İle Uygulama Geliştirmek
Bu içerik ile ilgili daha önce yapılmış yorumlar
1. sevgili arkadaşım ben delphi 7 de kendi çapımda küçük bazı projeler oluşturuyorum ve MSSQL-2000 SERVER kullanıyorum delphi 7 de syscon dosyası oluşturmak ve burada şirket kodu, ünvanı, şirket kısa ismi, şirket uzun ismi, maliyıl baş. maliyıl bitiş tarihi, dönem açma dönemi aktif hale getirme gerektiğinde oluşturduğumuz dönemi ve sirketi tamamen sil me işlemi yapmak için Ör. LKS2 de SYSCON dosyası gibi işlem görecek bir dosya yapmak istiyorum bu konuda bana yardımcı olurmusunuz veya bu konuda yardım alabileceğim bir arkadaş tavsiye edebilirmisiniz. Şimdiden yardımlarınız için teşekkür ederim. teknikbilisim@teknikbilisim.com

kemal - 09.02.2006 13:08:30

2. MsSql bağlantısında sorun yaşayan arkadaşların dikkatine:

Öncelikle Sql server kurulumunda windows account tipini değilde MsSql account tipini seçin ve Server=localhost
bağlantı stringini Server=MAKİNEADINIZ şeklinde değiştirin.

(§¡ñ@ñ) - 23.04.2005 00:22:53

3. Ben .NET e geçmek istiyorum ama önümüzde 2 Delphi editörü var. Delphi 2005 ve Delphi 8 Ben Arasındaki farkı ve Net ortamında program yazmak için hangisiyle başlamalıyım.Şimdiden teşekkürler.

Ali Bozkuş - 18.04.2005 11:40:50

4. Geç kalınmış bir çalışma.Bu çalışmanın daha önceden olmasını dilerdim.Ama yinede çok harika dersler var.EVREN AYAN bey'e gerçekten çok çok teşekkür ederim.Gençlerin önünü açmak gerkiyor.En fazlada artık bilginin saklanmadığı günlere kavuştuğumuza seviniyorum Site yöneticileri dahil bu çalışmaları yürüten herkesi takdir ediyorum.Selamlar.EVREN AYAN beyin delphi8 .net ile ilgili kitabının tanıtımını göremedim.Bu kitabında hemen çıkmasını diliyorum.

Erhan - 11.04.2005 13:24:00

Bu içerik hakkında yorum yazınız:

 

İsim:  
Email:  
Başlık:  
Yorum:  

 

anasayfa | dersler | örnek kodlar | forum | kaynaklar | dosyalar | biz kimiz ? | bir önerim var |  iletişim | hata bildir | reklam

MaxiASP.Net Rss Kaynağı:

Copyright 2002 - 2006 MaxiASP.Net (v 1.9) - Tüm Hakları Saklıdır.
 Alan Adı ve Bulundurma: Radore Hosting