In: Web
22 Tem 2011ASP ile genelde access veritabanı kullanılıyor. Ufak tefek, hitsiz sitelerde sorun çıkmıyor fakat büyük çapta projelerde MySQL veya MsSQL veritabanları kullanılıyor.
Bir kaç gündür kayıtlarının XML halinde yedeği alınmış bir e-ticaret sitesinin bilgilerini farklı bir e-ticaret yazılımına eklemeye uğraşıyorum. Daha doğrusu uğraşıyordum, veri kaybı yaşamadan işlem halledildi.
Gelelim yaşadığım ve çözümünü paylaşmak istediğim soruna gelelim.
Veritabanına 212,99 gibi bir ondalıklı sayıyı kayıt ederken hata almamla başladı olay. Veritabanında veri tipi olarak “Decimal (10,2)” görünüyordu. Yani 10 basamağa kadar bir tam sayı ve 2 basamaklı ondalık kısmını bu alana kayıt edilebilir. Ama ASP ile kayıt etmeye çalıştığınızda edemiyorsunuz maalesef.
İlk araştırmalarım sırasında CDbl() şeklinde hazır bir fonksiyon buldum.
veri=CDbl(veri)
Şeklinde deneme yapmama rağmen aynı hatayı almaya devam ettim.
Daha sonra farkettim ki veritabanında , yerine . ile ondalık kısım ayırılmış.
bunuda
veri= replace(veri , "," , "." , 1 ,-1 , 1)
şeklinde virgülleri noktayla değiştirip sorunu hallettim. Veriyi yazdırırkende tam tersi şekilde replace etmeniz gerekiyor yanlış anlaşılma olmaması için.
Buraya blog hakkında birşeyler yazmam gerekiyor ama üşendiğim için sonraya bırakıyorum...
ASP MySQL Decimal Kayıt Sorunu için 1 yorum var.
Selçuk ÜNAL
Temmuz 22nd, 2011 at 11:05
Umarım bu işlemleri yaparken kulaklarım çınlatılmamıştır