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
"sysdate" i ekrana bastığımda neden sadece tarih kısmı var?

Çözüldü 1 Cevaplar 178 Gösterim Veri Tabanı
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ı

1 cevap

2
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.

(594 puan)
seçti
1Yorumlar
(594 puan)
düzenledi

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