NVarChar VarChar Farkı

Google aramalarıyla siteme gelen kişilerin aradıkları şeylere ve gelen bir kaç soruya binaen bu farkı yazmaya karar verdim. Veritabanı uygulamalarımızı yazarken kolonlarımızda en çok tuttuğumuz türlerden birkaçı da char,varchar ve nvarchar’dır. Peki nedir bunların arasındaki fark. Öncelikle char tipi kolonumuzda karakter tutmamızı sağlar. Örneğin char(50) dediğimizde bu kolonumuza char tipi veri girebiliriz ve kolona kaç karakter girersek girelim her bir veri için 50 karakterlik yer ayrılır. VarChar tipindeki Var ifadesi variable yani değişken olduğunu bildiriyor. Peki değişken olması ne demek? Mesela VarChar(50) dediğimizde bu kolona 50 karakter girebiliriz ancak girdiğimiz veri 50 karakterden az ise verinin boyutu kadar yer tutar. Yani VarChar(50) tanımladığımız alanda 30 karakterlik bir veri tutulabilir. NVarChar değişkeninin mantığı ise VarChar ile aynıdır. İsmindeki N uNicode ifadesindeki N’dir. (***) VarChar’dan farkı ise bu kolonlarda Unicode karakterler tutulabilir. Yani veritabanında birden fazla dilde karakter bulunduran alanlar olacaksa bu tipte kolon oluşturmanız sorun yaşamanıza engel olacaktır.

(***): @Ahmet yorumunda NVarChar’daki N’nin “National” anlamındaki N olduğu hatırlatmasını yaptı. Hatırlatması için teşekkür ediyorum. Resmi olarak bu anlamda bir kısaltma. Ancak teknik anlamda daha açıklayıcı olduğu için üstteki ifadeyi tercih ediyorum. Nchar’da da benzeri bir durum var. Bu tipte alanlarda Unicode karakter tutabilirsiniz.

Veritabanı View’ler

Bu yazımızda belirli bir vtys özeline inmeden veritabanı view’lerinden, nasıl oluşturulup kullanıldıklarından ve üzerinde yapabileceğimiz DML işlemlerinden bahsedeceğiz.

View’ler fiziksel tablolar üzerinde çalıştırılan sorgular sonucu elde edilen verileri listelemeye yarayan mantıksal yapılardır. View’ler üzerinde veriler fiziksel olarak tutulmaz, bunun yerine sadece view’in tanımı tutulur. Bir view her çağrıldığında tanımda yer alan sorgu yeniden çalıştırılır, bu yüzden view içindeki veriler en güncel haldedir.

  Continue…

Veritabanı Group_Concat,Concat,Replace,Trim Fonksiyonları

Uygulamalarımızda kimi zaman veritabanından gelen veriler üzerinde değişiklik yapma ihtiyacı duyarız. Bu değişiklikler uygulama tarafında yapılabilir. Ancak performans arttırmak gibi sebepler nedeniyle bunları veritabanı tarafında yapmak isteyebiliriz. Bu yüzden  veritabanından veri çekerken, gelen veriler üzerinde değişiklik yapmanızı sağlayacak ve işlerinizi kolaylaştıracak 4 fonksiyondan bahsetmek istiyorum.

Continue…