Monthly Archives: Ekim 2009

Ayın Konusu: Ms-SQL Server 2005′de bazı faydalı fonksiyonları ve komutları inceleme!

Ms-Sql Server 2005’de bizlere faydalı olan bazı fonksiyonları sizlere burada açıklamaya çalışacağım daha fazlasını MSDN’den bulabilirsiniz. MSDN için yeri gelmişken birkaç birşey söylemek isterim, Visual Studio IDE’sini yapan ekibi tebrik ederim ama MSDN kütüphanesini hazırlayan ekibde en az onlar kadar saygıyı hak ediyorlar. Gerçek bir kütüphane, neredeyse her problemin çözümü ve bilmediğiniz bir o kadar bilgi MSDN’de mevcut bu zamana kadar girmediyseniz mutlaka o ortamada alışmaya başlayın. Konumuza dönersek bazı birkaç faydalı fonksiyonlardan bahsedeceğiz bunlardan ilki string fonksiyonları

  • len(string) fonksiyonu, hemen hemen her programcının kullandığı string’in karakter sayısını öğrenmeye yarayan faydalı bir fonksiyondur.
  • ltrim(string) fonksiyonu, yazının sol tarafındaki boşlukları silen fonksiyon.
  • rtrim(string) fonksiyonu, yazının sağ tarafındaki boşlukları silen fonksiyon.
  • left(string, karakter sayısı) fonksiyonu, parametre olarak geçilen string’in sol tarafından belirtilen sayıda karakter alan fonksiyon.
  • right(string, karakter sayısı) fonksiyonu, parametre olarak geçilen string’in sağ tarafından belirtilen sayıda karakter alan fonksiyon.
  • substring(string, başlangıç, karakter sayısı) fonksiyonu, parametre olarak geçilen stringin başlangıç indisinden itibaren karakter sayısı kadar karakteri alan fonksiyon.
  • isnumeric(ifade) fonksiyonu, parametre olarak geçilen ifadenin numeric olup olmamasına göre 0 veya 1 döndürüyor.
  • Rand([seed]) fonksiyonu, gerçi dönüş değeri float türünden bir sayı.
  • GetDate() fonksiyonu, size o anki tarih ve saati geri döndürür.

Bunun gibi daha birçok fonksiyona MSDN kütüphanesinden ulaşabilirsiniz, ben sadece sizlere benim en fazla kullandığım fonksiyonları verdim. Umarım faydalı olmuştur.

Kolay gelsin, iyi çalışamar…

Ayın Konusu: Ms-SQL Server 2005′de ‘Trigger’ Hazırlama.

Arkadaşlar Trigger’ı açıklamak gerekirse, siz tablonuza bir değer eklediğiniz, sildiğinizde ya da değiştirdiğinizde yapılmasını istediğiniz işlerin otomatik olarak gerçekleşmesini sağlıyor. Bunu biraz açıklayayım. Diyelim ki siz bir firmaya ürün stok programı yapıyorsunuz, bir üründen 2 adet sattığınızda otomatik olarak stok’dan düşmesi lazım, satan kişi gidip bir daha stok tablosundan 2 tane sattığı üründen düşmesin. İşte bu gibi işlemleri ‘Trigger’lar sayesinde yapabiliyoruz. Şimdi bakalım bu ‘Trigger’ları nasıl kullanıyoruz.

Sentaksı;

create trigger [Trigger Adı] on [Tablo Adı]
for [Delete, Update, Insert]
as
begin
   -- Yapılacak işler
end

Sanırım sentaks’da sadece for olan kısmı açıklamak yeterli olacaktır. for kısmı Trigger’in ne zaman tetikleneceğini söylüyor. Yani tabloya bir veri girildiği zaman mı?, bir satır silindiği zaman mı? yoksa bir satırdaki bilgi değiştirildiği zaman mı? bunu belirtiyor. Diğer kısımlarda anlaşılmayan bir kısım olduğunu zannetmiyorum.

Sentaks’ı uygularsak;

create trigger tr_MusteriSil on Musteri
for Delete
as
begin
   insert SilmeLog
   select Musteri, MusteriNo, getdate() from deleted
end

Uygulamada ki Trigger’ımız tahmin ettiğiniz gibi silme işleminde otomatik olarak SilmeLog isimli tabloya silinen veriyi kopyalıyor. from deleted kısmında ise silinen satırdaki veriler var ve tek satırlık bir veridir. Oradaki verileri select komutuyla çekiyoruz.

Trigger işlemleri çok sık kullanılan ve faydalı bir işlemdir. Umarım sizler için faydalı olmuştur.

Hepinize kolay gelsin, iyi çalışmalar…

Ayın Konusu: Ms-SQL Server 2005′de ‘Backup-Restore’ işlemleri!

Ms-Sql Server’da veritabanınızın yedeğini almak ve yüklemek çok basit bir şekilde yapılıyor. Normal dosya kaydetme, yükleme işlemlerinden farksızdır. Aşağıda adım adım bir veritabanı yedeği nasıl alınır ve yüklenir görelim;

adim1

1. Yedeğini almak istediğimiz veritabanına sağ tıklayıp ‘Backup’ seçeneğini seçiyoruz.

adim2_

2. Çıkan menüden bize veritabanımızı yedekleme türünü söylüyor. Ister ‘Full’ yedeğini alabiliriz isterseniz ‘Differential’ yedeğini alabilirsiniz. Eğer yer probleminiz yoksa ‘Full’ yedek almayı seçebilirsiniz. Yedeği kaydedeceği noktayı aşağıda gösteriyor burayı isterseniz değiştirebilir, isterseniz farklı bir yer ekleyebilirisiniz.

adim1_options

3. Options menüsüne girdiğinizde karşınıza bazı seçenekler çıkacaktır. Veritabının bir kopyasınımı oluştursun yoksa üzerine mi yazılması, media kartlarına mı yoksa sabit bir disk’e mi, yazıldıktan sonra kontrol edilsin mi gibi seçenler sunuluyor ben bu şekilde bırakıp yedekleme işlemimi sonlandırıyorum.

Yükleme kısmına gelirsek;

adim2_yukleme

4. Yine yedek yükleyeceğimiz veritabanında sağ tıklayıp Task->Restore->Database seçeneklerini seçiyoruz.

adim3

5. Karşımıza çıkan ekranda default olarak Backup klasörünün altına bakıyor ve orada gördüğü .bak uzantılı dosyaları bize çıkartıyor. Yüklemek istediğimiz dosyayı seçip OK tuşuna basıp veritabanı yükleme işlemini sonlandırıyoruz.

Gördüğünüz gibi MS-Sql Server’da yedek alma ve yükleme işlemleri o kadar da zor değil. Umarım faydalı olmuştur arkadaşlar…

Hepinize kolay gelsin, iyi çalışmalar…

Visual Studio 2010 Beta Download!

vs2010_logo Merak içinde beklediğim benim için gelmiş geçmiş yeryüzünün en iyi IDE’si Visual Studio 2010 beta sürümü çıktı. Buradan indirebilirsiniz. Bir an önce bende bu IDE’yi indirip incelemek istiyorum ama malum malesef ülkemizde kota diye illet birşeyi çıkarttılar bu yüzden önümüzdeki ayı beklemek zorundayım. Ama yarın ilk işim bunu işyerinden indirmek olacaktır. Umarım işyerinden kimse okumaz bu yazıyı :).

Herkese kolay gelsin, iyi çalışmalar…

Ayın Konusu: Ms-SQL Server 2005′de ‘Stored Procedure’ hazırlama!

Stored Procedure nedir sorusunun cevabını şöyle versek herhalde yanlış bir cevap vermiş olmayız. T-SQL komutları ile yazdığınız kodları çalışma anında derleyerek çalıştırmasını sağlayabileceğiniz bir SQL Server aracıdır ‘Stored Procedure’. Peki bu bize neler sağlayacak? Bununda cevabını şöyle sıralarsak doğru bir cevap vermiş oluruz;

– Kullanıcıya kullanım kolaylığı sağlar,

– Yazdığınız kodları parametrik bir şekilde çalıştırmanızı sağlar,

– Zamanlanmış görevlere ekleyerek belli aralıklarla çalıştırabilirsiniz.

– Uygulama kısmında sizi birçok kontrollerden kurtarır,

– Daha az network bandı kullanır, böylece ağınızda bir yavaşlamaya yol açmaz.

Bu listeyi daha da uzatmak elbette mümkün ama bize şimdilik bu kadarı bile ‘Stored Procedure’ kullanmamıza yeterli bir sebep. Peki bunu nasıl kullanacağız? Sentaksı aşağıdaki gibi;

create proc [Stored_Procedure_Ismi]
   Parametreler...
as
begin
   Kodlar...
end

Sentaksı uygularsak;

create proc [up_SaticiEkle]
@SaticiKod int,
@SaticiAd varchar(100),
@Bakiye decimal(10.2)
as
begin
   insert Satici (SaticiKod, SaticiAd, Bakiye) values (@SaticiKod, @SaticiAd, @Bakiye)
end

'Stored Procedure' bu şekilde oluşturduk. Biz bu 'Stored Procedure' kullanacağımız zaman 3tane parametre geçmemiz gerekiyor, yaptığı iş ise geçtiğimiz bu parametreleri Satici tablosuna eklemek. Burada birşeye daha dikkatinizi çekmek istiyorum, 'Stored Procedure' isimlendirilirken başına "up_" koydum bunu koymamdaki sebep "User Procedure" olduğunu belirtmek, "System Procedure'leride SQL'de sp_ ile başlar.

Peki gelelim şimdi hazırladığımız bu 'Stored Procedure'leri kullanmaya. Aşağıdaki kod parçacı bir 'Stored Procedure' nasıl kullanılır sorusu için en güzel örnek;

exec up_SaticiEkle 10, IstanbulElektronikAnahtar, 200.40

Kullanımını açıklarsak, "10, IstanbuElektronikAnahtar, 200.40" parametlerini Satici tablosuna ekleyecektir. Temel olarak 'Stored Procedure' oluşturma ve kullanımı bu şekildedir. Sitemde hazırlamış olduğum "C# ile Windows Formuna Login Girişi" projesinde birden fazla 'Stored Procedure' hazırladım ve kullandım. Ilerleyen günlerde .Net ortamında da nasıl çalıştıracağımızı detaylı bir şekilde anlatacağım. Bu ayın ilk konusunu geçde olsa bitirdim. Umarım sizler için faydalı olmuştur.

Kolay gelsin, iyi çalışmalar...

Eresin Otel 2009 Eğitim Teknolojileri Fuarındaydım!

Bu hafta sonu, Eresin Otel’de düzenlenen ‘Eğitim Teknolojileri Fuarı’na katılan Istanbul Elektronik Anahtar firmasında çalışan bir yazılımcı olarak bende firma adına yaptığım bilgisayar programını yurt içi ve yurt dışından katılımcılara anlattım. Cuma-Cumartesi ve Pazar günleri olan fuara her yıl olduğu gibi katılım son 2 günde yoğundu.:) Bu yıl Istanbul Elektronik Anahtar çatısı altında 3. kez katılıyor olmam ve bu yaşda böyle büyük bir firmada bu tecrübeyi elde etmek ayrı bir mutlulukdu benim için. Okul ve işi beraber yürütmek gerçekten çok keyifli birşey, canınızın sıkılmasına fırsat bulamıyorsunuz, edindiğiniz tecrübede artı olarak sizinle geliyor. Bu imkanı bana sağlayan ve bana güvenen firmama da buradan teşekkür ediyorum. Seminerden bir kaç görüntüde sizlerlen paylaşmak istedim;

Ayın konularına geç kaldım farkındayım en kısa zamanda ekleyeceğim. Herkese kolay gelsin, iyi çalışmalar…

Yaşamdan Dakikalar…

Her Pazar  saat 10.20’de ATV’de severek izlediğim bu programda bugun aşağıdaki şiirden birkaç satır okudular ve çok hoşuma gitti. İnternette bu şiiri araştırdım, şiirin Bedri Rahmi Eyüboğlu’na ait olduğunu ve isminin KARADUT olduğunu öğrendim. Çok beğendiğim bu şiiride sizlerle paylaşmak ve yazılım dünyasından birazcık uzaklaşalım dedim. 🙂

KARADUT

Karadutum, çatal karam, çingenem
Nar tanem, nur tanem, bir tanem
Ağaç isem dalımsın salkım saçak
Petek isem balımsın ağulum
Günahımsın, vebalimsin.
Dili mercan, dizi mercan, dişi mercan
Yoluna bir can koyduğum
Gökte ararken yerde bulduğum
Karadutum, çatal karam, çingenem
Daha nem olacaktın bir tanem
Gülen ayvam, ağlayan narımsın
Kadınım, kısrağım, karımsın.

Ekim Ayında Sitemde!

Geçen ay söz verdiğim gibi tüm konuları sitemde anlatmaya çalıştım. Umarım geçen ay kendinize faydalı birşeyler bulmuşsunuzdur. Sitemde Eylül ayında ağırlıklı olarak C#’a yer vermiştim bu ay ise Ms-SQL Server 2005 hakkında makalelere ağırlık vermek istiyorum. Bu ay sitemde sizlere aşağıdaki konuları anlatmaya çalışacağım;

– Ms-SQL Server 2005’de ‘Stored Procedure’ hazırlama.

– Ms-SQL Server 2005’de ‘Backup-Restore’ işlemleri

– Ms-SQL Server 2005’de ‘Job’ tanımlayarak otomatik yedek alma.

– Ms-SQL Server 2005’de bazı faydalı fonksiyonları ve komutları inceleme (count, len, order by, distinct vb.)

– Ms-SQL Server 2005’de ‘Trigger’ hazırlama.

Bu ayki konularımız bunlar elbette buraya konu olarak yazmadığım ama sizlerle paylaşacağım faydalı bilgilerde olacaktır. Hepinize başarılı bir ay geçirmeniz dileğiyle.

Hepinize kolay gelsin, Iyi çalışmalar…

 Scroll to top