Konuyu Oyla:
  • Derecelendirme: 3/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
[ÇÖZÜLDÜ] Tablodaki alana 0 değerini default olarak gönderme
#1
Selamlar Arkadaşlar

bir kod yazmaya çalışıyorum. Durum şu; query ile insert ile, tablodaki iki farklı alanı çarpım işlemi yapıyorum. Ancak, eğer tablodaki alanın değeri null olacaksa, null yerine oraya 1 yazdırmam gerek. Bunu kod ile yapabilir miyiz?
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla
#2
Merhaba,

1) Veritabanı ne?
2) Hangi veritabanı bileşenini kullanıyorsun?
3) Veritabanı katmanında mı bunu yapmak istiyorsun, yoksa dataset'ten post etmeden önce mi yapmak istiyorsun?
YouTube Delphi Tips
"Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır" Peyami Safa
WWW
Cevapla
#3
(01-09-2019, Saat: 23:13)uparlayan Adlı Kullanıcıdan Alıntı: Merhaba,

1) Veritabanı ne?
2) Hangi veritabanı bileşenini kullanıyorsun?
3) Veritabanı katmanında mı bunu yapmak istiyorsun, yoksa dataset'ten post etmeden önce mi yapmak istiyorsun?

Selamlar

Veritabanım mysql. Uniquery bileşeni kullanıyorum. Excelde yapılmış olan bir formülü adapte etmem lazım koda.
Excel de yazana baktığımızda =(EĞER(EHATA(D97="#SAYI/0!");1;D97)
değer yoksa, buraya 1 olarak yaz diyor.
Bende aynı şekilde bunu değer yoksa 1 pot etmeliyim.
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla
#4
hocam oyle uğracağına neden DB de default değer kısmını 0 ayarlamıyorsun?
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#5
(01-09-2019, Saat: 23:45)mcuyan Adlı Kullanıcıdan Alıntı: hocam oyle uğracağına neden DB de default değer kısmını 0 ayarlamıyorsun?

şu anda zaten öyle. Ancak, öncesinde de =(0,001*D98+1,03088)/2+KAREKÖK(((0,001*D98+1,03088)/2*(0,001*D98+1,03088)/2)+0,0009*D97+0,000425*D102) şeklinde bir hesaplama da olduğundan dolayı, değeri başka bir alandan alıyorum. Yani buradaki default değer hep 1 olsa sorun değil. Değer değişken olduğu için sabitleyemiyorum.

(01-09-2019, Saat: 23:45)mcuyan Adlı Kullanıcıdan Alıntı: hocam oyle uğracağına neden DB de default değer kısmını 0 ayarlamıyorsun?

daha önce mssql de şu şekilde bir kod kullanmıştım. aslında bunu adapte etsem güzel olacak.
CASE WHEN STHAR_GCKOD='G'  AND STHAR_TARIH='2016-01-01' AND STHAR_HTUR='A' THEN SUM (STHAR_GCMIK) ELSE 0 END  DEVIR_MIK,
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla
#6
(01-09-2019, Saat: 21:44)wiseman Adlı Kullanıcıdan Alıntı: Selamlar Arkadaşlar

bir kod yazmaya çalışıyorum. Durum şu; query ile insert ile, tablodaki iki farklı alanı çarpım işlemi yapıyorum. Ancak, eğer tablodaki alanın değeri null olacaksa, null yerine oraya 1 yazdırmam gerek. Bunu kod ile yapabilir miyiz?
merhaba

sanırım coalesce fonksiyonu işini görür.
Cevapla
#7
@wiseman  Siz insert ederken mi, Select ederken mi default değer atayacaksınız?  

Select:
SELECT IFNULL(column, 0) FROM table;

Insert:
str:='Insert Into Table '+
           '(Column_Result)'+
            'Values ('+
            ':Column_Result)';
          With Uniquery Do
          Begin
             if Active Then Active:=False;SQL.Clear;sql.Add(str);ParamCheck;
		  if String.IsNullOrEmpty(FloatToStr(MyFloat)) then
		  ParamByName('Column_Result').Value:= 1 else
		  ParamByName('Column_Result').Value:= MyFloat;
		  ExecSQL;
          end;
Cevapla
#8
@ meko hocamın dediği gibi o zaman çareniz coalasce fonksiyonu..

https://bidunyasi.wordpress.com/2014/05/...-farklari/
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#9
(02-09-2019, Saat: 15:24)mcuyan Adlı Kullanıcıdan Alıntı: @ meko hocamın dediği gibi o zaman çareniz coalasce fonksiyonu..

https://bidunyasi.wordpress.com/2014/05/...-farklari/

Teşekkür ederim. İnceliyorum.
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  AdoQuery ile ilgili bir sorun. (Çözüldü) Bay_Y 4 111 17-04-2024, Saat: 10:58
Son Yorum: Bay_Y
  Fastreport İçindekiler Sayfası Oluşturma [ÇÖZÜLDÜ] bydelphi 1 237 18-03-2024, Saat: 12:11
Son Yorum: bydelphi
  Çok Satırlı Filtreleme [Çözüldü] bünyamin68 12 1.352 14-02-2024, Saat: 22:42
Son Yorum: mustafaozpinar
  [ÇÖZÜLDÜ] macos işletim sistemine program yazmak shooterman 5 513 02-02-2024, Saat: 09:54
Son Yorum: shooterman
  COZULDU veritabani prg yerine ne kullanabilirim. sadikacar60 8 775 29-01-2024, Saat: 18:41
Son Yorum: sadikacar60



Konuyu Okuyanlar: 1 Ziyaretçi