Oracle’da birbiri ile ilişkili tablolar oluşturmak
Ağustos 23, 2008
Birbiri ile ilişkli tablolar,
bir diğer adı ile primary key – foreign key ilişkisi.
Bu yazımızda Oracle‘da bu tarz bir ilişkinin basit bir örneğini göstermeye çalışacağız.
Oracle’da ref cursor yardımı ile select prosedürü yazma ve .Net tarafında çalıştırma
Ağustos 20, 2008
Oracle’da insert, delete, updete prosedürleri bir değer(satır, tablo) döndürmediği için select prosedürüne göre yazımları kolaydır. Select prosedürünü yazarken ise ref cursor kullanmak gerekir.
önce prosedürümüzü yazalım
CREATE OR REPLACE PROCEDURE CALISAN_GOSTER(v_refcur IN OUT SYS_REFCURSOR) IS
BEGIN
OPEN v_refcur FOR SELECT * FROM TBL_CALISAN;
END;
Bu prosedürü compile ettikten sonra .NET tarafında çalıştırmak için şu kodları kullanmamız yeterli
! System.Data.OracleClient sınıfını projenize eklemeyi unutmayın !
- public DataTable CalisanGetir()
- {
- OracleCommand cmd = new OracleCommand();
- cmd.CommandType = CommandType.StoredProcedure;
- cmd.CommandText = “CALISAN_GOSTER“;
- cmd.Parameters.Add
- (“v_refcur”, OracleType.Cursor).Direction = ParameterDirection.Output;
- DataTable dtblCalisan;
- dtblCalisan = new DataTable();
- cmd.Connection = new OracleConnection(“Data Source=TESTDB.test;User id=id12345;Password=pass12345″);
- cmd.Connection.Open();
- OracleDataReader reader = cmd.ExecuteReader();
- dtblCalisan.Load(reader);
- reader.Close();
- return dtblCalisan;
- }
Bu fonksiyonu çalıştırdığınız zaman TBL_CALISAN tablosunu veri tabanından çekip DataTable a bastıktan sonra verileri DataTable olarak bize dönderecek.
Kolay Gelsin!