Jika Anda ingin melihat tanggal dengan waktu yang ditampilkan juga tanpa menerapkan format mask dengan to_char()
, Anda perlu mengubah NLS_DATE_FORMAT
. Dengan asumsi yang Anda maksud adalah Oracle SQL Developer, Anda dapat melakukannya dari Tools->Preferences, perluas bagian Database di panel di sebelah kiri, dan pilih NLS:
Saat ini NLS_DATE_FORMAT
diatur ke DD-MON-RR
, yang akan ditampilkan hari ini sebagai 16-MAY-14
. Untuk menampilkan tanggal dan waktu lengkap, saya mungkin menyetelnya ke YYYY-MM-DD HH24:MI:SS
. Anda mungkin ingin mengubah NLS_TIMESTAMP
formatnya juga.
Pengembang PL/SQL juga memiliki opsi NLS di bawah Alat->Preferensi:
Anda dapat melihat model format yang tersedia di dokumentasi.
Jika Anda sedang menulis kode yang akan atau mungkin pernah dieksekusi oleh orang lain, jangan mengandalkan pemformatan implisit menggunakan parameter tersebut. Mereka baik-baik saja untuk kueri ad hoc di lingkungan tertutup Anda sendiri, tetapi mereka mungkin rusak dengan cara yang menarik ketika orang lain - dengan pengaturan NLS yang berbeda - menjalankannya. Untuk apa pun kecuali kueri ad hoc, Anda harus benar-benar menentukan mask, menggunakan to_char(<column>, 'YYYY-MM-DD HH24:MI:SS')
atau model apa pun yang sesuai. Ini tentu saja juga berarti Anda mendapatkan pemformatan yang tepat untuk kolom; jika Anda memiliki kolom yang hanya mewakili waktu, maka atur model format sesi dan mengandalkan itu berarti Anda melihat semua 00:00:00
kali, yang seringkali hanya kebisingan.