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.

Read the rest of this entry »

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 !

  1. public DataTable CalisanGetir()  
  2. {  
  3. OracleCommand cmd = new OracleCommand();  
  4. cmd.CommandType = CommandType.StoredProcedure;  
  5. cmd.CommandText = “CALISAN_GOSTER“;  
  6.   
  7. cmd.Parameters.Add  
  8.   
  9. (“v_refcur”, OracleType.Cursor).Direction = ParameterDirection.Output;  
  10.   
  11. DataTable dtblCalisan;  
  12. dtblCalisan = new DataTable();  
  13. cmd.Connection = new OracleConnection(“Data Source=TESTDB.test;User id=id12345;Password=pass12345″);  
  14. cmd.Connection.Open();  
  15. OracleDataReader reader = cmd.ExecuteReader();  
  16. dtblCalisan.Load(reader);  
  17. reader.Close();  
  18. return dtblCalisan;  
  19. }  

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!