ADO.NET Transaction İşlemi - I

C#, VB.NET, ASP.NET No Comments »

DbTransaction nesnesi, veritabanı sistemine gönderdiğimiz sorguya ait transaction yönetimini sağlamak için kullanılır. Bilindiği gibi transaction(işlem) kavramı, veritabanı yönetim sistemlerinde önemli bir yere sahip olup birbirleriyle ilişkili iş parçacıklarının bulunduğu mantıksal bir birim olarak düşünebilir. Transaction yönetimi, aynı iş parçacığında seri bir şekilde yürütülecek sorguların hatasız bir şekilde sonuçlanıp sonuçlanmadığının kontrolünü sağlar. Klasik bir örnek olarak banka sisteminde havale uygulamasını ele aldığımızda ilk önce havaleyi yapan kişinin hesabından ilgili miktar düşürülür ve havale yapılan kişinin hesabına o kadar miktar eklenir. Dışarıdan basit görünen bu sürecin herhangi bir halkasında meydana gelecek bir hata kaynak veya hedef siteminde bilgi tutarsızlığına neden olacaktır. Bu yüzden bu işlemlerin transaction yönetiminde gerçekleştirilmesi gerekir. “Ya hep ya hiç” mantığıyla çalışan transaction işleminin esas amacı “veri bütünlüğü” olup, süreç içerisinde istenmeyen bir durum olduğu zaman önceki iş parçacıklarının geri alınmasıdır. Yani süreç, başlangıç noktasına geri döndürülür ve süreç içindeki hiçbir iş parçacığının gerçekleşmemiş olduğu kabul edilir. Büyük ölçekli VTYS’lerde dahili transaction yönetimi bulunmaktadır. Örneğin SQL Server’da çalıştırdığımız bir UPDATE veya DELETE işlemi esnasında herhangi bir kesinti olduğu zaman o zamana kadar gerçekleştirilmiş güncelleme veya silme işlemleri geri alınır ve veriler eski haline geri dönmüş olur. Bu geri alma işlemine ROLLBACK(geri sarmak), işlemler hatasız çalıştığı durumda değişikliklerin kalıcı hale getirilmesine COMMIT(işlemek) denilir. Read the rest of this entry »

SQL Server Programlama ve Yönetim İpuçları - I

SQL Server, Oracle No Comments »

Bu yazıda T-SQL’de her an ihtiyaç duyabileceğimiz SQL Server’in kendi içinde bulunan veya bulunmayan metod ve ipuçlarını vereceğiz. Yeni bir hint ile karşılaştıkça yazının devamına ekleyeceğiz. Ayrıca sizin de kullandığınız kısa bir yöntem varsa paylaşmanızı diliyoruz. Read the rest of this entry »

SQL Server’da Sistem Stored Procedure’leri

SQL Server, Oracle 1 Comment »

Stored Procedure’ler veritabanı sistemlerinde genellikle toplu işlemler yapmak için kullanılan dışarıdan parametre alabildiği gibi dışarıya parametre verebilen, sadece yürütülebilir(execute edilir SELECT edilemez) önderleme gerçekleştirmiş nesnelerdir. SQL Server, bazı işlemleri daha kısa yoldan ve hızlı gerçekleştirmemiz için programlama veya yönetim ile ilgili sistem procedur’leri sunar. Bu procedur’lerin bazıları doğrudan T-SQL yazılmış bazıları da harici bir dil ile yazılarak bir kütüphane(.dll) içindeki fonksiyon olarak çalışan olarak çalışırlar bu tür procedure’ler master database’in altında bulunarak extended stored procedure denilir. Bu bölümde bize kolaylıklar sağlayan bu sistem procedur’leri işleyeceğiz. Read the rest of this entry »

Kolondaki Verileri Tek Satırda Göstermek(Concatenate İşlemi)

Query Analyzer No Comments »

T-SQL’de iki string’i birleştirmek için CONCAT metodu kullanılır. Bazı durumlarda aynı satırdaki verileri değil alt altta durunda verileri birleştirmek isteyebiliriz. Bunun için klasik değer birleştirilme yöntemi kullanılır. Örneğin bir müşteriye ait ikinci bir tabloda row olarak duran birden fazla telefonunu, okuduğu gazeteleri, hobilerini okuyup tek bir satırda gösterme ihtiyacı duyabiliriz. Musteri ve MusteriTelefon tabloları olduğunu düşünelim.
Musteri
————–
1 Ahmet Kaymaz
2 Mehmet Kaymaz


MusteriTelefon
————–
1 (0212)111
1 (0533)111
2 (0216)111
2 (0542)111

İlk işlem olarak örneğin ID’si 1 olan Ahmet Kaymaz’ı telefonlarını birleştirerek getirelim. Bunun için tipik string birleştirmesi yapacağız. Read the rest of this entry »

Windows Formunda sistem menüsünü yönetmek

C#, VB.NET, ASP.NET 3 Comments »

Windows ortamında geliştirdiğimiz desktop tabanlı exe programındaki her formun task barında standart pencere yönetim menüsü çıkar. Pencerenin ikonu tıklandığında, title bar veya taskbar sağ tıklandığında görünen bu sistem menüsü formun türüne göre farklılık gösterse de genellikle, Restore, Move, Size, Minimize, Maximize ve Close eventleri içerir. Uygulamalarımızda bu menüyü yönetmek isteyebiliriz örneğin oradaki default menüden bazılarını disable etme ihtiyacı doğabilir veya birçok programda gördüğümüz “About” bölümünü ekleyebiliriz. Sistem menüsünü yönetmek için .NET plaftormunda özel bir kütüphane bulunmamaktadır. Bunu sağlamak için Windows API’si kullanılır. Read the rest of this entry »

Windows Form’unu Yönetmek(ShowDialog-Show metodları)

C#, VB.NET, ASP.NET 2 Comments »

Bir desktop uygulaması yazılırken uygulama içerisinde ana bir Form(Main Window) üzerinden birden fazla Form açıp kapatma ihtiyacımız doğar. İkinci formu açarken modal(kipli) veya modeless(kipsiz) pencere tipi kullanılır. Modal olarak açılmış pencereler, pencere kapatılmadığı sürece alttaki pencerelere erişime izin vermeyendir. Programlardaki “Dosya Aç” penceresi bu türden bir penceredir. Bu penceredeki işimizi bitirip pencereyi kapatmadığımız sürece programın diğer ekranlarına geçemeyiz. Modeless olarak tanımlanmış pencere tipinde ise ikinci pencere açıkken de alttaki pencereye erişilir (Non-Modal Windows). Word programındaki “Find and Replace” penceresi bu türden bir penceredir. Modal pencere tipini daha çok dialog window denilen iletişim kutuları için tercih ederiz. İletişim kutuları kullanıcıya bir uyarı vermek veya kullanıcıdan bilgi girişi almak için hazırlanmış özel pencerelerdir. Bir Main form üzerinde alt formları açmak için de Modeless pencere tipi yaygın olarak kullanılır ama bazen de Modal pencere tipi de tercih edilir. Peki bu durumda bu basit farkın dışında neye dikkat edilmelidir. Read the rest of this entry »

ASP.NET kontrollerin ReadOnly veya Disable edilmesi

C#, VB.NET, ASP.NET No Comments »

Web uygulamalarımızda form kontrollerini, kullanıcının müdahelesini engellemek için readonly veya disable ederiz. Bütün ASP.NET Web kontrollerinin Enabled property’si bulunur. Bu property’inin değerini false olarak seçtiğimizde kontrol, HTML elementi olarak render edildiği zaman disabled niteleğiyle işaretlenmiş olur.


Server tarafında bu şeklinde tanımlanmış kontroller, aşağıdaki şekilde render edilir.


Bu durumda IE veya Firefox tarafında bu elementler gri modda görünecek ve kullanıcının bu kontrollere fokuslanması veya değerini değiştirmesi engellenmiş olacaktır.
Textbox kontrolünde bu property’e ek olarak ReadOnly property’si bulunur. CheckBox, RadioButton, DropDownList, RadioButtonList, CheckBoxList gibi kontrollerde bulunmayan bu property, TextBox kontrolünün sadece okunabilir olmasını sağlar. Bu durumda TextBox kontrolü browser içerisinde gri modda girmeyecek(içindeki metnin rengi gri olmayacak) aynı zaman kullanıcının bu kontrole fokuslanmasına izin verilmiş olacaktır. Disabled gibi readonly durumunda da kullanıcı, kontrolün değerini değiştiremez. Disable ile ReadOnly arasındaki bu basitten farktan daha önemli bir fark bulunmaktadır. Read the rest of this entry »

SQL Server Management Objects (SMO)

SQL Server, Oracle 23 Comments »

SQL Server 2000, SQL sunucularını uzaktan programatik olarak yönetebilmek için COM tabanlı SQL-DMO(Distributed Management Objects) bileşenini(sqldmo.dll) sunmaktaydı. SQL Server yönetimi için kullandığımız Enterprise Manager uygulaması da temelde bu API’yi kullanıyor. SQL Server 2005, doğrudan DMO bileşenine destek vermekle birlikte bunu biraz daha geliştirip, iki tane .NET tabanlı bileşen haline getirmiştir;SQL Server Management Objects (SMO) ve Replication Management Objects (RMO). Bu kütüphaneler, nesnelerin script yapısı yönetim, database backup yönetimi, job oluşturulması ve güncellenmesi, nesne güncellemeleri gibi işlemleri, programlarımız içerisinden yapmamızı sağlar. Bu yazıda özellikle database yöneticileri için her derde deva olarak görülen SMO kütüphanesi detaylandıracağız. Read the rest of this entry »

SQL Server’da Maksimum Memory Kullanımı(AWE)

SQL Server, Oracle 2 Comments »

İş hacminin arttığı ve veritabanlarının büyüdüğü günümüzde var olan memory alt yapısı, çoğu zaman büyük ölçekli sorguların sonuçlarını karşılamakta yetersiz kalmaktadır. Bu yüzden gün geçtikçe yazılımsal optimize işlemleriyle birlikte sistemi koşturacak, HDD, CPU ve RAM’i de iyileştiririz. Fakat bu iyileştirmeyi yaparken işletim sisteminin sözkonusu donanıma uygunluğunu da gözönünde bulundurmalıyız. Bu bölümde 4 GB ve daha fazla memorynin bulunduğu bir platformda SQL Server’in daha fazla fiziksel belleği kullanması için nasıl bir yönlendirme yapacağımız üzerinde duracağız. Read the rest of this entry »

Proper Case (VB.NET, C#, T-SQL)

C#, VB.NET, ASP.NET 2 Comments »

Kullanıcı tarafından veritabanına girilmek üzere olan bilgileri, standart bir formatta düzenlemek verilerin hem doğru raporlanmasını sağlar hem de okunabilirliğini artırır. Bu bilgiler arasında genellikle tarih, para, ad soyad ve adres gibi bilgileri bulunmaktadır. Bu yazıda veritabanına girilmiş veya girilecek “ad soyad” bilgilerinin Proper Case formatına nasıl dönüştürüleceğine dair fonksiyonları vereceğiz. ProperCase olarak tanınlanan format, her kelimenin ilk harfinin büyük diğer harflerin küçük yazılmasıdır. Örneğin kullanıcının yazdığı “ahMEt kaYMAZ” şeklindeki veriyi “Ahmet Kaymaz” olarak dönüştürmektir. Bu dönüştürmeyi C#, VB.NET ve SQL tarafında birçok farklı şekilde yapabiliriz. Read the rest of this entry »

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Giriş