Oca
28

.Net’de Oracle veritabanına bağlanmak

.Net de oracle veritabanına bağlanmak için bi kaç yol bulunmaktır. Bunlardan birisi .net in kütüphanesi olan “OleDb” ile. Ama bu kütüphaneyi kullanmanız durumunda eğerki oracle 10 ve üzeri versiyonlarda sorunlarla karşılaşmak durumunda kalmanız. Öyleki benimde karşıma bir çok sorun çıktığı için oracle kendi kütüphanesini kullanmanızı öneririm. Ama ben genede bu yolu kullanmak isteyen arkadaşlar için örnek bir kod parçacağını aşağıda anlatıyor olacağım.

1. Yol : OleDb kütüphanesi

İlk önce OleDb küyüphanesini projemize ekliyoruz.


using System.Data.OleDb;

Clasımıza 2 tane Global değişken tanımlıyoruz.


OleDbConnection OleDbConnection1;
OleDbCommand OleDbCommand1;

Daha sonra ise oracle veritabanına bağlantı işlemini “baglan” isimli fonksiyonla gerçekleştiriyoruz.


public bool baglan()
{
try
{
OleDbConnection1 = new OleDbConnection();
OleDbConnection1.ConnectionString = "Provider=MSDAORA;Data Source=(DESCRIPTION=" + "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=HOSTUNUZ)(PORT=PORTUNUZ)))(CONNECT_DATA=(SID=SIDNIZ)));User Id=KULLANICI ADINIZ;Password=ŞİFRENİZ";
OleDbConnection1.Open();

return true;
}
catch (Exception)

{
Console.WriteLine(ex.ToString());

return false;
}
}

yukarıdaki gerekli tns bilgilerini girdikten sonra bağlantıyı başarılı şekilde gerçekleştiriyoruz.


private void verGetir()
{
string query = "SELECT ID FROM kullanici WHERE id=1";

OracleCommand1 = new OracleCommand(query);
OracleCommand1.Connection = this.OracleConnection1;
OracleCommand1.CommandType = CommandType.Text;

try
{
OracleDataReader OracleDataReader1 = OracleCommand1.ExecuteReader();

if (OracleDataReader1.Read())
{
string enes = OracleDataReader1.GetDecimal(0).ToString();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}

Daha sonra ise tablomuzdan verilerimizi çekme işlemini gerçekleştiriyoruz.

Bu şekilde oracle veritabanından verimizi çekmiş oluyoruz.

2. Yol : Oracle Data Provider

İl olarak Oracle Data Provider kütüphanesini Oracle’ın sitesinden indiriyoruz. Yaklaşık 233 mb’dır. indirmek için ilk önce üye olmak gerekecek sonra indirmemize izin verecektir.

32-bit Oracle Data Access Components (ODAC) with Oracle Developer Tools for Visual Studio kütüphanesini indirmek için tıklayın.

Kütüphaneyi indirdikten sonra zipden çıkartıp setup.exe ile sistemimize kuracağız. Bu sayedeVisual Studiomuza otomatik entegre etmemizi sağlayacak.

Bu yolda 1. yoldakinin bir kopyasıdır fakat sadece syntax farklılıkları var o yüzden size sadece benim yazmış olduğum classı aşağıda yazıyorum.


using Oracle.DataAccess.Client;

namespace Tahakkuk
{
public partial class Form1 : Form
{
OracleConnection OracleConnection1;
OracleCommand OracleCommand1;

public Form1()
{
InitializeComponent();

this.baglan();
this.verGetir();
}

public bool baglan()
{
try
{
OracleConnection1 = new OracleConnection();
OracleConnection1.ConnectionString = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=HOSTUMUZ)(PORT=PORTUMUZ)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=SIDMIZI)));User Id=KULLANICIADIMIZ;Password=ŞİFREMİZ;";
OracleConnection1.Open();

return true;
}
catch (Exception)
{
return false;
}
}

private void verGetir()
{
string query = "SELECT ID FROM kullanici WHERE id=1";

OracleCommand1 = new OracleCommand(query);
OracleCommand1.Connection = this.OracleConnection1;
OracleCommand1.CommandType = CommandType.Text;

try
{
OracleDataReader OracleDataReader1 = OracleCommand1.ExecuteReader();

if (OracleDataReader1.Read())
{
string enes = OracleDataReader1.GetDecimal(0).ToString();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
}
}

Herkese güzel kod yazmalar. 🙂

3 yorum bulunmaktadır - “.Net’de Oracle veritabanına bağlanmak”

  • ZAFER 16 Kasım 2012, 17:53

    merhaba sayın enes pakkaya 🙂 oracle ile asp.net baglantı örneginin projesini e-mailime yada burda kendi sitende yayinlarsan seviniriz tüm sınıf olarak şuan 30 kişilik sınıftan sözcü olarak ben yazıyorum yazılarınız süper her zaman takipcisiniz kendinize iyi bakın şimdiden teşekkürler

  • Enes Pekkaya 20 Kasım 2012, 09:11

    Merhabalar, öncelikle hepinize teşekkür ederim. 🙂 En kısa zamanda sizlere örnekli yazımla paylaşacağım. Mail ilede bildiririm. 🙂 İyi çalışmalar…

  • gökçen 03 Ekim 2013, 10:38

    merhaba;
    1.yolu izlediğim zaman “Oracle istemcisi ve ağ bileşenleri bulunamadı. Bu bileşenler Oracle Corporation tarafından sağlanmaktadır ve Oracle 7.3.3 veya daha sonraki sürümlerin istemci yazılımı kurulumunun bir parçasıdır. Bu bileşenler yüklenmedikçe sağlayıcı çalışmaz. hatasını alıyorum “. ikinci yolda ise makinem 64 bit olduğu için dll hata veriyor. Bi rtürlü sorunu aşamadım yardımcı olur musunuz lütfen. teşekkürler

Yorum Yapın

 

Twitter'dan Takip Et! Twitter'dan Takip Et!

Etiketler

Son Yazılar

Son Yorumlar

Bağlantılar

Arşivler