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 »
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 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 »
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 »
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 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 »
İş 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 »
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 »
Bir uygulama geliştirirken göz önünde bulundurmamız gereken önemli konulardan biri de hiç şüphesiz “güvenlik”tir. Güvenlik konusu deyince nedense aklımıza daha çok network tabanlı bir koruma gelir. Oysa birçok saldırının kaynağı uygulama içerisindeki açıklardan kaynaklanmaktadır. Bir uygulamayı güvenli kılmanın birçok yöntemi bulunmaktadır. Hakların düzenlenmesi, doğru ayarların yapılması, kullanıcıdan gelen bilgilerin doğrulanması, etkili validation işlemlerinin yapılması, gizli-kritik bilgilerin uygulama içerisinde saklanmaması, etkin hata yönetiminin sağlanması, aktif bir test gerçekleştirilmesi, veritabanının koruma altına alınması, .NET platformunda unmanaged kaynaklarının doğru yönetilmesi bu yöntemlerden sadece bir kaçı. Bu yazıda uygulama güvenliğini sağlayan yöntemlerden biri olan ve Windows işletim sisteminin 2000 ve sonraki sürümleri tarafından desteklenen DPAPI (Data Protection Application Programming Interface) arabiriminin .NET cephesi hakkında konuşacağız. Read the rest of this entry »
![]() |
Uzun zamandır aradığım filmi izleme imkanım oldu. ‘Kaplumbağalar da Uçar’, ‘Sarhoş Atlar Zamanı’nın Iran’lı yönetmeni Bahman Ghobadi‘den, ‘mayın tarlalarında büyüyen çocuklar’ üzerine etkileyici bir film. Orjinal adı “Lakposhtha hâm parvaz mikonand” olan bu film, Saddam sonrası Irak’ta çekilen ilk film olma özelliğini taşımaktadır. Filmde, Bush ve Saddam’ın şahsında büyüklerin kurguladığı(çirkinleştirdiği) dünyada Irak halkının şahsında çocukların nasıl bir yaşam savaşı verdikleri anlatılmaktadır. |





Recent Comments