bildirgec.org

trigger hakkında tüm yazılar

Oracle 10g’de sequence kullanmadan primary key değerleri üretmek veya autonumber

mgulsoy | 11 February 2010 17:36

Oracle veritabanı platformunda diğer bazı platformlarda bulunan autonumber gibi otomatik veri tipleri bulunmamaktadır. (En azından ben şu ana kadar böyle bişi görmedim 🙂 ) Dolayısı ile tablolarda satırlara benzersiz (unique) bir tanımlayıcı eklemek için başka yöntemler kullanılır. Bunlardan en çok kullanılanı bir adet sequence oluşturup insert olayına atanan bir trigger ile gerekli alana istenen benzersiz değerin sequence’tan okunarak atanmasıdır.

Şimdi anlatacağım yöntemin ne avantajı olur açıkçası bilmemekteyim, fakat şöyle bir fikrim var veritabanı nesne sayısını azaltabilir. Bu yöntem de işleyiş açısından yukardaki (herkesin kullandığı) yönteme benzemekte. Tek farkı sequence kullanılmaması. Sequence kullanmak yerine tablonun rownum pseudo-column (yalancı alan) değerini sorgulamak ve değeri almaktır. Bu işlemde belirli bir satıra veya değere göre sorgulama yapmadığımız için mantık doğru çalışacaktır. Ancak şöyle bir dezavantajı var ki (prroze ‘ye teşekkür ederim) eğer tablodan kayıt çıkarırsanız bu işlem sonucunda benzersiz bir anahtar elde edemezsiniz. Dolayısı ile kullanım alanı olarak log tablosu gibi sadece artan yapılarda doğru sonuç verecektir.

TRIGGER, STORED PROCEDURE ve REFERENTIAL INTEGRITY

zynex | 02 November 2009 16:16

Bu yazıda verilecek örnek kodlar Sybase Adaptive Server Anywhere ve Interbase6 üzerinde çalıştığı test edilmiş kodlardır. Kodlar içinde kullanılan SQL cümleleri standart SQL cümleleri olması sebebi ile diğer veritabanlarında da kolayca çalışacaktır. Sadece trigger ve stored procedure tanımlamalarındaki kod yapısı farklılıklar göstermektedir. Çalışacağınız veritabanında nasıl trigger ve stored procedure tanımlanabileceğini öğrenerek bu denemeleri yapmak mümkün olabilir. İtiraf edeyim ki yazı biraz uzun olduğu için tekrar baştan aşağı okumadım. Yaptığım hataları uyarmanız sonucu düzeltmekten memnuniyet duyarım.

Trigger Kulanarak Sql Serverda 2 tabloyu aynı anda veri girme

admin | 18 August 2009 13:17

Bilindi gibi aynı anda 2 tabloya veri girmek için kullanılan teknolojiye göre kodlamalar var. Bunu sadece sql server kulanarak ta yapmak mümkündür Peki nasıl Triggerlar yardımı ile yani tetikleyici sql procedureleri ile peki bu tekitkleyici procedurler ne işimize yarar. Zaman ve Performans kazanmamız dışına işlem kolaylıgı sağlar. Vb C# veya PHP dilinde aynı anda iki tabloya aynı veri girmek veya bir tablodan diger tabloya veri aktarmek hep sorun olmuştur. Sql server kulanılıyorsa kaynak azlında kulanımı basit fakat ögrenmesi zor olan bir teknoloji.
Bunun için kulanıdım tablolar iki tane tablo oluşturdum kendime biri ürün
diyeri ürünkontrol bunlar kodları.