2015-07-13 12 views
13

Bunu belirtmek istiyorum: Nasıl bu iseSQLCommand.Parameters.Add - Ondalık değer boyutu nasıl verilir?

Decimal(18,2) 

:

SqlComm.Parameters.Add("@myValue", SqlDbType.Decimal, 0, "myValue"); 

Şu anda tasarım yan özelliklerinden precision = 2 tanımladık. Bunu koddan nasıl gerçekleştireceğimi merak ediyorum. Teşekkür

Eğer ondalık hassasiyet satır içi ayarlamanıza izin verir Add bir aşırı yük bile yok
+0

Parametre değeri 0 ise neden daha fazla duyarsınız? –

+1

Hassas değer, ondalıktan sonra kaç hane olduğunu belirler, doğru mu? Şu anda bu soru için bir yer tutucu olarak 0. –

+0

Kodun ondalık boyutu için ayarlamayı (18,2) merak ediyorum. "Math.Round" kullanarak C# 'yı yuvarlayabilir veya SQL deyiminizde olduğu gibi bu değeri alabilirsin –

cevap

22

, bir SqlParameter nesnesi oluşturmak ve koleksiyonunuza ekleyin gerekir ya bu kadar:

SqlParameter param = new SqlParameter("@myValue", SqlDbType.Decimal); 
param.SourceColumn = "myValue"; 
param.Precision = 18; 
param.Scale = 2; 
SqlComm.Parameters.Add(param); 

veya parametreyi sonra "Bul" eklerken:

SqlComm.Parameters.Add("@myValue", SqlDbType.Decimal, 0, "myValue"); 
SqlParameter param = SqlComm.Parameters["@myValue"]; 
param.Precision = 18; 
param.Scale = 2; 
+0

Ah tamam, ihtiyacım olan şey bu. –

İlgili konular