Forum

C# tarih fortmatı (...
 
Bildirimler
Hepsini Temizle

C# tarih fortmatı (Db : Oracle

5 Yazılar
2 Üyeler
0 Likes
589 Görüntüleme
(@gokhansen)
Gönderiler: 55
Trusted Member
Konu başlatıcı
 

Arkdaşlar merhaba,

Oracle veritabanında c# ile bir takım veriler çekmek istiyorum fakat bir sorgumda tarih aralığı vermem lazım.Aşağıya hem oracle hem de c# kodlarımı yazıyorum.Yardımcı olursanız sevinirim.

Oracle üzerinden sorgumu bu şekilde sorunsuz çalıştırıyorum(Toad ile)
...
AND P.GTARIH >= TO_DATE('12.01.2018 00:00','DD.MM.YYYY HH24:MI')
AND P.GTARIH <= TO_DATE('12.01.2018 23:59','DD.MM.YYYY HH24:MI')

C# kodlarım ise şöyle.(Form üzerindeki dateTimePicker nesnelerimin formatı "short" seçili. )
...
AND P.GTARIH >= TO_DATE('" + dateTimePicker1.Value.Date.ToShortDateString() + "','DD/MM/YYYY HH:MI:SS')
AND P.GTARIH <= TO_DATE('" + dateTimePicker2.Value.Date.ToShortDateString() + "','DD/MM/YYYY HH:MI:SS')";

Bu kodlarla iki tarihi de aynı yapıp(saat aralıkları farklı tabi) aratınca hiç sonuç döndürmüyor. Yalnız 1 günlük tarih aralığı verirsem sorun olmuyor

 
Gönderildi : 20/02/2018 19:29

(@aliuysal)
Gönderiler: 292
Üye
 

short date yaptığın için saat:dakika:saniye olmuyor, bu nedenle 1 günlük kayıtları çekebiliyorsun. çünkü saat formatı short da 00:00:00 olarak sorguluyor.

Timespan kullanarak tarih saat olarak getirmeniz gerekir.

Dijital dönüşüm başlıyor...
RFID Sayım
WinFlow e-Fatura Onay Akış Süreç Yazılımı
Android El Terminali
Elektrikli Araç Şarj Yazılım Platformu
RFID Demirbaş
QrCode Api

 
Gönderildi : 20/02/2018 19:46

(@gokhansen)
Gönderiler: 55
Trusted Member
Konu başlatıcı
 

short date yaptığın için saat:dakika:saniye olmuyor, bu nedenle 1 günlük kayıtları çekebiliyorsun. çünkü saat formatı short da 00:00:00 olarak sorguluyor.

Timespan kullanarak tarih saat olarak getirmeniz gerekir.

 

hocam örnek bir satır kod paylaşırsan sevinirim.

 
Gönderildi : 20/02/2018 19:57

(@aliuysal)
Gönderiler: 292
Üye
 
DateTime dt = datetimePicker1.Value;
TimeSpan st = new Timespan(dt.Day, dt.Month, dt.Year, dt.Hour, dt.Minute, dt.Second);

Dijital dönüşüm başlıyor...
RFID Sayım
WinFlow e-Fatura Onay Akış Süreç Yazılımı
Android El Terminali
Elektrikli Araç Şarj Yazılım Platformu
RFID Demirbaş
QrCode Api

 
Gönderildi : 20/02/2018 20:27

(@gokhansen)
Gönderiler: 55
Trusted Member
Konu başlatıcı
 

DateTime dt = datetimePicker1.Value;
TimeSpan st = new Timespan(dt.Day, dt.Month, dt.Year, dt.Hour, dt.Minute, dt.Second);

 

new TimeSpan(dt.Day, dt.Month, dt.Year, dt.Hour, dt.Minute, dt.Second);

 

Buranın altını çiziyor hocam...

 
Gönderildi : 20/02/2018 20:43

Paylaş: