veritabanında 5-10 karakter aralığında sadece tam sayılardan oluşan bir alan var. bu alanı float yapmak mı yoksa nvarchar yapmak mı daha iyidir (alan aynı zamanda primary key olacak)? alan üzerinde matematiksel işlem yapılmayacak, sadece arama için kullanılacak.

soruldu: 13 Haz '12, 02:27

Bora's gravatar image

Bora
1594612
cevap kabul oranı: 0%

değiştirildi: 13 Haz '12, 03:18

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183


Merhaba,

Noktalı sayı kullanmadığınız durumlarda, float kullanmak iyi bir pratik değildir. Eğer bu alanda "like" sorgusu yapmayacaksanız, integer tipinin size uygun olan int ya da bigint tipini kullanmanız, bu alanın aynı zamanda primary key olmasından dolayı daha doğru olacaktır.

http://msdn.microsoft.com/en-us/library/ms187745.aspx

Eğer bu alanda "like" sorgusu yapacaksanız, mecburen NVARCHAR kullanmanız gerekmektedir. Bu durumda bu alanı primary key olarak kullanmanızı tavsiye etmem, yapacağınız joinlerde performans problemlerine sebep olacaktır. Bu alanın aynı zamanda integer olan bir versiyonunu oluşturup onu primary key olarak set etmek, arama yapacağınız alan üzerinde ise full text search kullanmanız daha doğru olacaktır.

http://msdn.microsoft.com/en-us/library/ms142571.aspx

permanent link

cevaplandı: 13 Haz '12, 03:13

tilikoglu's gravatar image

tilikoglu
8602816
cevap kabul oranı: 18%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×77
×53
×4

Soruldu: 13 Haz '12, 02:27

Görüntüleme: 2,271 kez

Son güncelleme: 13 Haz '12, 03:18

powered by BitNami OSQA