(Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
(Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
Selam arkadaşlar bir ticari program ile entegre B2B web sitesi hazırlamaktayım.
Ticari programda siparistutar alanı (Numeric,28,9) şeklinde tanımlanmış (MS SQL).Webformumda textbox1 içinde 49,99 değeri bulunmakta bunu insert into ile bu siparistutar alanına kaydetmeliyim ama tip hatası veriyor.Ne yapmam lazım sizce..
durum biraz acil..
Ticari programda siparistutar alanı (Numeric,28,9) şeklinde tanımlanmış (MS SQL).Webformumda textbox1 içinde 49,99 değeri bulunmakta bunu insert into ile bu siparistutar alanına kaydetmeliyim ama tip hatası veriyor.Ne yapmam lazım sizce..
durum biraz acil..
Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
Ne yapacaksın tipini değiştireceksin...
Bu kadar basit. Yani yaptığın işe göre biraz acemice bir soru olmuş.
Tutar alanı parasal bir alan olduğu için alanı decimal,float,currency,real gibi tiplerde tanımlamalısın

Tutar alanı parasal bir alan olduğu için alanı decimal,float,currency,real gibi tiplerde tanımlamalısın
Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
hocam o kadarını bende düşündümde, convert.ToNumeric diye bir fonksiyon yok.textbox1 deki 49,99 luk değer doğal olarak string türünde covert.ToDouble(TextBox1.Text) şeklinde denemiştim yine tip hatası vermişti..
Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
@battosai sanırım veritabanındaki alanın tipini değiştirmeyi kasdetmiş.
bazen yükselmek için önce dibi görmek gerekir...
forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
onu malesef yapamam çünkü program paket bir program tipi değiştirirsem program hata verecek.Yani program kendi yazılımımız değil malesef..
yalnız şöyle bir durum var
49,99 değilde 49.99 şeklinde yazılırsa bunu kaydediyor. fakar datalistden aldığım için değeri
49.99 olarak alamıyorum..
yalnız şöyle bir durum var
49,99 değilde 49.99 şeklinde yazılırsa bunu kaydediyor. fakar datalistden aldığım için değeri
49.99 olarak alamıyorum..
Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
s.a.
serverin bölgesel ayarları ile ilgil bir durum.
uygulamanızda ondalık ayracını , bindelik ayracını kontrol edebiliyorsanız onları kontrol etmeyi deneyin.
kola ygelsin.
serverin bölgesel ayarları ile ilgil bir durum.
uygulamanızda ondalık ayracını , bindelik ayracını kontrol edebiliyorsanız onları kontrol etmeyi deneyin.
kola ygelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Re: (Numeric,28,9) şeklinde tanımlı bir fielda veri kaydetmek..
madem virgülden hoşlanmadı bu numeric alan bende çözümü kayıttan önce;
komutu ile replace yaparak çözdüm. döngü ile Gridview1 deki kayıtların tümünü sipariş tablosuna kaydettiriyorum.
(gvr.Cells[2].Text) gridde tutar alanının bulunduğu yer oluyor burdaki değerde virgülleri nokta yapıp s değişkenine atıp
insert into komutunda s değişkeninden kaydı yaptırıyorum.
yukardaki kod başkalarınada lazım olabilir diye yazıyorum fakat bunu kullanabilmek için
kodunun eklenmesi gerekmekte..
Kod: Tümünü seç
string s = Regex.Replace(gvr.Cells[2].Text, @",", ".");
(gvr.Cells[2].Text) gridde tutar alanının bulunduğu yer oluyor burdaki değerde virgülleri nokta yapıp s değişkenine atıp
insert into komutunda s değişkeninden kaydı yaptırıyorum.
yukardaki kod başkalarınada lazım olabilir diye yazıyorum fakat bunu kullanabilmek için
Kod: Tümünü seç
using System.Text.RegularExpressions;
En son serkan tarafından 18 Oca 2009 05:28 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
Burda garip olan numeric alan tipi için ondalık ifade kabul etmesi MsSQL adlandırmaları aldatıcı gibi Numeric görünce sadece rakam kabul eden bir alan olması icap ediyor tanıma göre...bu yüzden değiştir demiştim...Çözüm için doğru yöntem seçmişsin bende MySQL için virgül nokta değişimi yapıyorum Ondalık ayraç olarak nokta(.) kullandıkları için böyle bir sorun çıkıyor...Fakat ben parasal değerin binlik ayracı olarak nokta ondalık için virgül kullanmak istediğimden değeri replace ile değiştiriyorum...Sen daha basit bir çözüm istiyorsan açılışta thousandseparator:=',' ve decimal içinde '.' tanımlarsan replace yapman gerekmeyecektir....
Re: (Numeric,28,9) şeklinde tanımlı fir fielda veri kaydetmek..
windows uygulaması olsa dediğin gibi açılışta decimalseparatoru kullanırım ama web uygulamalarında varmı bilmiyorum benimde aklıma ilk o geldi ama bulamayınca replace ile işi çözdük...
yardım ve fikirleriniz için teşekkürler.
yardım ve fikirleriniz için teşekkürler.