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?
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" P.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.
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,
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.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  PDF-WORD-EXCEL Binary olarak kaydetme ve geri okuma hk MugenPower 5 504 10-08-2020, Saat: 00:45
Son Yorum: Bay_Y
Video Comport 5 ve 6 nolu pinlere sinyal gönderme tuna 18 1.313 21-07-2020, Saat: 11:36
Son Yorum: mrmarman
  Krityere göre listeleme - çözüldü ekank 3 441 16-07-2020, Saat: 22:05
Son Yorum: ekank
  (Çözüldü)Memory aşımı powerghost 14 1.221 16-07-2020, Saat: 10:50
Son Yorum: mrmarman
  Harici exeyi child/modal form olarak çalıştırmak bydelphi 2 359 14-07-2020, Saat: 18:09
Son Yorum: bydelphi



Konuyu Okuyanlar: 1 Ziyaretçi