Etiket arşivi: sql

SQL tablodaki iki alanı tek alan olarak alma

SQL’de alanlar arasında belli işlemler yaparak kullanmak, kullanmak zorunda olana kadar aklıma gelmemişti. Yapacağım işlem ad ve soyad adında iki farklı alanı bir alan gibi gÖstermekti. Aşağıdaki kodla bu işlemi gerçekleştirdim.

select ID,(Adi +' '+ Soyadi) as isim from PERSONEL

Burada PERSONEL tablosundan ID ve isim olarak iki alan alınıyor. İsim alanı normalde tabloda yok, Adi ve Soyadi alanlarının birleştirilmesiyle oluşturuldu ve iki alan arasında bir karakter boşluk bulunmaktadır.

Trigger nedir , nasıl kullanılır ?

Bilindiği üzere trigger’lar tetikleyici olarak adlandırılırlar. Peki tetikleyici ne demek; veri tabanınız üzerinde herhangi bir transactional işlem yani delete, insert, update işlemi yaptığınız anda veri tabanınızın istediğiniz başka bir işlemi otomatik olarak kendisinin gerçekleştirmesidir. Varsayalım veri tabanımızdaki tablolardan biri, bir diğerine bir sutünla bağlı. Bu sütundan bir veri silindiğinde diğer tablomuzda bu silinen verilerin bulunduğu kayıtların da silinmesi isteniyor. Böyle bir durumda yapacağımız olay ilk tablomuz için bir trigger yazmaktır. Böylelikle bu tablodan bir veri silindiğinde, trigger otomatik olarak çalışacak ve diğer tabloya gidip ilgili kaydı silecektir. Trigger’lar işlerimizi kolaylaştırabileceği gibi karmaşık bir veritabanı için çok iyi kontrol edilmezlerse, çok büyük sıkıntılara da yol açabilirler. Trigger’ların yazım şekli aşağıdaki gibidir. Trigger oluşturuluyorsa CREATE, oluşturulmuş bir trigger değiştiriliyorsa ALTER deyimi kullanılır. AFTER deyiminden sonra ise tabloya yapılacak hangi işlemden sonra bu trigger’ın tetikleneceği belirtilir.

( tsql )

CREATE / ALTER TRIGGER   trigger’a vereceğimiz isim
ON    trigger’ı kullanacağımız tablo
AFTER INSERT/UPDATE/DELETE
AS
BEGIN
trigger’ın çalışması halinde yapılacak işlemler
END