Pazartesi , 7 Temmuz 2014
Son Haberler
Anasayfa / Etiket Arşivi: PL/SQL (sayfa 2)

Etiket Arşivi: PL/SQL

Sequencelerle İlgili Birkaç Not

Sequence’ ler için sayaç tabloları denilebilir. Sequence’ ler sizin belirlediğiniz bir noktadan istediğiniz oranda bir artış hızıyla, istediğiniz bir değere kadar sayı üretirler. Create sequence komutunun full syntax’ ı ; CREATE SEQUENCE [schema.]sequencename [INCREMENT BY number] [START WITH number] [MAXVALUE number | NOMAXVALUE] [MINVALUE number | NOMINVALUE] [CYCLE | NOCYCLE] [CACHE number | NOCACHE] [ORDER | NOORDER] ; Increment by ; Alınacak olan sıra numarasının kaçar kaçar artacağını ifade ... Devamını Oku »

  • tweet

Bilinen Adıyla LOGON TRIGGER

Güvenlik anlamında bir adım daha ileri giderek sisteme connect olan bazı userların sadece bir (veya birkaç ip’ den) gelmesini istiyorsunuz. Veya zaten birkaç ip’ den geliyordur siz bunların dışındaki olası girişlerin önüne geçmek isteyebilirsiniz. Aşağıdaki trigger da aynen bu işlemi gerçekleştirmektedir. Belirlenmiş olan kullanıcıların hangi ip adresinden geldiğine bakıp izin verilen adres ise connect’ inı kurmasını sağlayıp, farklı bir ip ... Devamını Oku »

  • tweet

Oracle XML-1

resim21

Oracle Table’lardan veriyi XML formunda çekme CREATE TABLE DBT ( NUM NUMBER, ADI VARCHAR2(14), SOYADI VARCHAR2(22), TAR DATE );   Şeklinde bir tablo oluşturalım. Şimdi de tablomuza aşağıdaki kayıtları ekleyelim. Insert into DBT (NUM, ADI, SOYADI,TAR) Values (1, ’Ercan’, ’Yazgan’, trunc(sysdate)); Insert into DBT (NUM, ADI, SOYADI) Values (2, ’yusuf’, ’Arslan’, trunc(sysdate)); Insert into DBT (NUM, ADI, SOYADI) Values (3, ’Samet’, ’Aslan’,trunc(sysdate));     Tabloya bir bakalım   select * from dbtable   Num     Ad           Soyad    Tar —–        ——      ——-    ————- 1              Ercan     Yazgan  21/12/2010 2              yusuf     Arslan   21/12/2010 ... Devamını Oku »

  • tweet

Oracle Hatalarını Output’a yazdırmak ve Loglamak

  Merhaba arkadaşlar, Bu makalede sık sık başımıza gelen bir konuya değineceğim. Oracle veritabanıyla çalışırken karşımıza cıkan ORA-. ile başlayan hatalar, yazdığımız prosedürün çalışmasını keser veya prosedürü dışarıdan bir arayüzden çağırıyorsak (.Net/JAVA/DELPHI v.s. ..) programın çakılmasına yol açar. Bu gibi durumlarda PLSQL bloklarımızın içinde, diğer dillerdeki Try-Catche mantığıyla çalışan “EXCEPTION” bloklarını yerleştireceğiz.   Oracle hatalarını yakalamak ve üzerinde işlem yapmak ... Devamını Oku »

  • tweet

ADD_MONTHS Fonksiyonu ve Gün Ekleme

  Merhaba arkadaşlar, Bu makalemde add_months() fonksiyonundaki bir takım incelikleri sizlerle paylaşacağım. Tarih bilgisi içeren önemli ve kritik raporlarınızda kesinlikle dikkatinizden kaçmaması gereken bir konu olduğunu düşünüyorum.   SQL tarih fonksiyonlarından biri de add_months fonksiyonudur. Bu fonksiyonun çeşitli kullanım şekilleri vardır. Fakat fonksiyonun temel mantığı; girilen bir tarihten itibaren, verilen ay sayısı kadar geriye veya ileriye gitmektir. Fonksiyonu analiz edersek ... Devamını Oku »

  • tweet

Oracle XML-2

XML verisini parse ederek  Oracle’da tabloya insert etme Önceki yazımda  Oracle ‘da tablodan veriyi XML formunda çekmeyi anlatmıştım; bu yazımda ise aynı işlemin tersini yani XML formunda gelen bir stringin içinden veriyi parse ederek tabloya atma işlemini göstereceğim . Daha anlaşılır olması açısından önceki tablomuzu kullanalım :   CREATE TABLE DBT ( NUM NUMBER, ADI VARCHAR2(14), SOYADI VARCHAR2(22), TAR DATE ); Table created. Şöyle bir xml ... Devamını Oku »

  • tweet

SYS_REFCURSOR un içeriğine Erişmek

resim21

Bu yazıda Oracle da prosedür içerisinden SYS_REFCURSOR doldurup bu CURSOR içerisindeki her satıra tek tek erişerek ekrana basma işlemi yapacağız. Bir tablodaki kayıt ile ilişkili başka bir tabloda birden fazla kayıt bulunabilir  (1 – n ilişki) ve siz alt tabloda üst tablonun id si olan kayıtları göstermek isteyebilirsiniz Tablolar arasındaki ilişki gözüküyor.   Prosedurümüz üst kısmında gerekli tanımlamaları yapıyoruz. RC_CURSOR ... Devamını Oku »

  • tweet

Dublicate Dataların Bulunması ve Silinme İşlemleri

resim21

Dublicate datalarin bulunmasi kolaydir ama silinmesin de bi takim sikintilar yasayabiliriz.Geçen gün 96 row için 1 saatten fazla çalisan select gördügümde ne oluyor acaba diye düsünmeye basladim.Internette arastirdigim bütün dublicate datalari bulma yöntemini denedim ama gene ise yaramadi.Sonunda söyle bir metot gelistirdim.Dublicate datalarin bulundugu tabloyu referans alarak bir tablo create ettim.Daha sonra bu create ettigim tablodan eslesen row_id leri buldum ve ... Devamını Oku »

  • tweet

SQL Performans İyileştirme

Bu makalemizde SQL izleme yöntemlerini ve iyilestirme senaryolarina bakis açimizi irdeleyecegiz.Çogu kez raporlarimizin saatlerce çalistigi durumlar olmustur veya çok kisa sürede çalismasi gereken sorgularimizin neden uzun süre çalistigini merak etmisizdir.Simdi bu tip problemler için çözüm yöntemlerine kisaca bi bakalim Neden SQL Izleme-Iyilestirme?       SQL iyilestirme islemi ile genel olarak sunlar hedeflenmektedir   Büyük tablolar üzerindeki gereksiz “full-table” erisimlerin ... Devamını Oku »

  • tweet

PL/SQL Fonksiyonları; NVL,NVL2,Decode

PL/SQL Fonksiyonları :NVL style=”font-size: 18pt; font-family: inherit; color:black;”>NVL(deger, deger_Null_ise_bu_deger_ile_degistir ) fonksiyonu eger deger ifadesinin degeri “null” ise, deger_Null_ise_bu_deger_ile_degistir ifadesi ile degistirir. Diger durumlarda deger i geri döndürecektir. Fonksiyonun amaci, null olarak gelen degerleri, belirtilen deger ile degistirmektir. Bu islev ile ilgili alandaki tüm degerlerin “null” olmamasi garanti edilir.     Nerelerde tercih edilir ? Çogunlukla sayisal bir deger döndürmesi beklenen alanlardaki veriler eger “null” ise 0 ile degistirmek ... Devamını Oku »

  • tweet