search
Giriş
Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
0 oy
464 gösterim
Yapmak istediğim PL/SQL developer da bir job çalışıtıryorum, ancak çalışan job un ne zaman başlayıp bittiğinin log unu tutmak istiyorum. Select sysdate from dual dediğimde çıksa da, ekrana dbms_put.put_line(sysdate) ile sadece date olan 01/11/2016
çıkıyor, acaba DB admin olarak mı ayarlanıyor otomatik bilmiyorum ama saat kısmı çıkmıyor veya saniye. Bu bir tabloya date olarak atmaya çalıştığım zaman da aynı şekilde saati göstermiyor. Neden olabilir?
Ancak şöyle bir çözüm buldum en son ,

 TO_CHAR(SYSDATE, 'MM-DD-YYYY HH24:MI:SS')
kapalı
Veri Tabanı kategorisinde 2.0k puan
yeniden etikenlendirildi

1 cevap

2 oy
 
En İyi Cevap

Merhaba,
yaşadığınız sorun NLS_DATE_FORMAT  ile ilgili.  

PL/SQ developer'da bunu kalıcı olarak değiştirmek için Tools / Preferences  --> Database --> NLS Parameters   menüsünü takip edin, Date Format kısmına "dd/mm/yyyy hh24:mi:ss"  yazın. (tırnaklar olmayacak). Sonra tekrar sysdate çekebilirsiniz.

Diğer bir alternatif de session bazlı   NLS_DATE_FORMAT  parametresini aşağıdaki gibi değiştirmek.  Fakat bunu her bağlantı yenilediğinizde çalıştırmak zorundasınız.

 alter session set  NLS_DATE_FORMAT = 'DD-MON-RR HH.MI';
 
 select sysdate from dual;


output: 05-OCA-16 11.02

Kolay gelsin.

604 puan
seçti

bu arada sqlplus kullanıyorsanız,  sqlplus'da   en başta "set timing on" komutunu çalıştırırsanız, sonrasında çalışan her iş için çalışma süresini(elapsed time) verir.


SQL> set timing on
SQL> select sysdate from dual;


SYSDATE
----------
05/01/2016

Elapsed: 00:00:00.03

SQL>  alter session set  NLS_DATE_FORMAT = 'DD-MON-RR HH.MI';

Session altered.

Elapsed: 00:00:00.00

SQL>  select sysdate from dual;

SYSDATE
---------------
05-JAN-16 11.10

Elapsed: 00:00:00.01

İlgili sorular

0 oy
1 cevap 775 gösterim
775 gösterim
Select * from TABLO t where t.start_date between '14.11.2016 04:01:39' and '14.11.2016 05:03:39' gibi timestamp formatında bir datayı nasıl çekebilirim
14 Kasım 2016 Veri Tabanı kategorisinde tolgacelik.art 2.0k puan sordu
0 oy
1 cevap 1.3K gösterim
1.3K gösterim
Selam Elimde var olan bir tabloya yeni alanlar ve commentler ekleyeceğim. Bunu minimum komutla nasıl yaparım Oracle'da.
5 Şubat 2019 Veri Tabanı kategorisinde tolgacelik.art 2.0k puan sordu
0 oy
1 cevap 254 gösterim
254 gösterim
ana tablo sağdaki soldaki gibi bir sorgu istiyor yardımcı olurmusunuz sql komutu lazım çok acil
5 Mayıs 2020 Veri Tabanı kategorisinde SEFA SEVİM 104 puan sordu
0 oy
1 cevap 363 gösterim
363 gösterim
Elimde CUSTOMER tablosu var ve bunun için rastgele 20 veriyi nasıl getiririm ?
28 Ocak 2020 Veri Tabanı kategorisinde tolgacelik.art 2.0k puan sordu
0 oy
1 cevap 791 gösterim
791 gösterim
Bir dosyadan küsürlü bir sayı almaya çalışyorum. Ancak bazı sayıların sonunda nokta olabiliyor. Bunları nasıl ayırabilirim? örn: "46440.0" değil de "46440."
15 Mayıs 2019 Veri Tabanı kategorisinde tolgacelik.art 2.0k puan sordu