Oracle SQL Developer'da nasıl özel bir tarih formatı ayarlayabilirim?


199

Varsayılan olarak, Oracle SQL geliştirici tarih değerlerini olarak görüntüler 15-NOV-11. Varsayılan olarak zaman bölümünü (saat / dakika / saniye) görmek istiyorum.

Bunu Oracle SQL Developer'da yapılandırmanın bir yolu var mı?


Daha önce bu konuda zor bir sorunum var. Bir oturum için düzeltebilirim, ancak SQL Developer'ı kapatıp yeniden başlattığımda ayarı kaybediyorum. Bu yüzden sağlayabileceğim bu çözüm kalıcı değil.
Brett Walker

Bir cevap ekleyebilir misiniz? @BrettWalker, hiç yoktan iyidir.
ComfortablyNumb

5
"DATE" adı verilen ve gerçekten hassasiyeti ikinci sırada saklayan bir veri türü için ne kadar saçma bir varsayılan. Bu birçok insanın zamanını boşa harcamış olmalı.
WW.

Yanıtlar:


399

Bunu tercihlerde değiştirebilirsiniz:

  1. Oracle SQL Developer'ın menüsünden Araçlar > Tercihler'e gidin .
  2. Gönderen Tercihler iletişim kutusundan, Veritabanı > NLS sol panelden.
  3. NLS parametreleri listesinden, girmek DD-MON-RR HH24:MI:SSiçine Tarih Biçimi alanında.
  4. Kaydet ve iletişim kutusunu kapat, bitti!

İşte bir ekran görüntüsü:

Oracle SQL Developer'da Tarih Biçimi tercihlerini değiştirme


1
Linux üzerinde SQLDeveloper kullanıyorum ve bu ayar benim için çalışmıyor .. başka bir şekilde?
Filipe

3
Oraya hangi formatı koyarsam yapayım göz ardı ediliyor. Bu sql: to_date ('02 -OCT-14 ',' YYYY-AA-GG ') oluşturulan bu yüzden şimdi benim sql sadece düz kırık görüyorum.
James Watkins

Bu biçim benim için çalışmıyor, belki de platform yerel ayarları nedeniyle ... bu işe yaramazsa cevabımı görün
Donatello

2
bu ayar nerede saklanır? DB veya SQL Developer?
Araç Seti

44

Ben sql-geliştirici tarihler için görüntüleme biçimini değiştirmeye çalışırken bu yazı tökezledi. Ben sadece bunu buldum ne eklemek istedim:

  • Varsayılan görüntü biçimini değiştirmek için, ousoo tarafından sağlanan adımları kullanacağım yani Araçlar> Tercihler> ...
  • Ancak çoğu zaman, yalnızca bir dizi ilgili sorgu sırasında biçimi değiştirirken DEFAULT_FORMAT'ı korumak istiyorum. İşte o zaman oturumun formatını şu şekilde değiştirirdim:

    alter SESSION set NLS_DATE_FORMAT = 'my_required_date_format'

Örneğin:

   alter SESSION set NLS_DATE_FORMAT = 'DD-MM-YYYY HH24:MI:SS' 

26

Oracle SQL Developer 3.2.20.09 ile, DATE türü için özel biçimi bu şekilde ayarlamayı başardım:

In: Araçlar> Tercihler> Veritabanı> NLS

Veya: Dış Mekanlar> Préférences> Base de donées> NLS

YYYY-AA-GG HH24: MI: SS

Ayarlar Menüsü ekran görüntüsü

Aşağıdaki biçimin benim için çalışmadığını unutmayın :

DD-MON-RR HH24: MI: SS

Sonuç olarak, varsayılan formatı hatasız tutar.


3

Hala bununla ilgili bir sorun yaşayan herkes için; Bu sayfayı Google'dan buldum ...

Bu şekilde (NLS Parametreleri) koyun ... SQLDeveloper v3.0.04'te benim için yapışıyor:

DD-MON-YY HH12:MI:SS AM or for 24-Hour, DD-MON-YY HH24:MI:SS 

'AM' biçim belirtecinin 24 saatlik biçim için kaldırıldığını belirtmek önemlidir. Hem 'AM' hem de 'HH24' belirteçleri kullanılırsa, 'AM' 'HH24'ü geçersiz kılar.
Amerika papağanı

2

Benim durumumda Tercihler / Veritabanı / NLS'de ayarlanan biçim [Tarih Biçimi] = RRRR-AA-GG HH24: MI: SSXFF, ancak ızgarada 8 olasılıkla varsayılan biçim RRRR / MM / DD (zaman olmadan bile) görüldü. [Tarih Formatı] ayarını şu şekilde değiştirdikten sonra değiştirildi: RRRR-AA-GG HH24: MI: SS (sonunda 'XFF' olmadan).

Hiçbir hata olmadı, ancak sonunda xff ile format çalışmadı.

Not: lehçe gösterimi RRRR YYYY anlamına gelir


2
TL; DR: sonunda '
XFF

Oracle'da bir tarihin kesirli saniye bölümü yoktur. Bir zaman damgası yapar. Bu nedenle Oracle, işe yaramayacak bir şey belirtmenize izin vermeyerek yardımcı olmaya çalışıyor.
Roy Latham

0

Zaman damgası için tarih biçimini kopyalayıp tarih için kullandığımda işe yaramadı. Ancak tarih biçimini bu şekilde değiştirmek (GG-PY-YY SS12: MI: SS AM) benim için çalıştı.

Değişiklik Araçlar-> Tercihler-> NLS aramasında yapılmalıdır.


0

Araçlar> Tercihler'e gidin. Ağaçta Veritabanı> NLS'yi seçin. Üç Tarih / Saat biçimi vardır: Tarih, Zaman Damgası ve Zaman Damgası TZ. Tarih biçimini düzenlemek istediğiniz efekti verir.

Yukarıda söylediğim gibi; bu yaklaşım bana kalıcı bir değişiklik yapmadı.


jsyk, profile pic hatırlatıyor bana don corleone (böyle bir yorum için yanlış yer)
Jonathan dos Santos

0

SQL Geliştirici Sürüm 4.1.0.19

1. Adım: Araçlar -> Tercihler'e gidin

Adım 2: Veritabanı Seçin -> NLS

Adım 3: Tarih Formatına Git ve DD-MON-RR HH24: MI: SS Gir

4. Adım: Tamam'ı tıklayın.


-1

Çözdüğüm ve insanlara çözümüm hakkında bilgi vermek istediğim bir sorunum var. SQL Developer'ı kullanarak bir veritabanından csv'ye dışa aktardım, sonra başka bir veritabanına aktarmaya çalıştım. Tarih alanlarımda hata almaya devam ettim. Tarih alanlarım Zaman Damgası biçimindeydi:

28-JAN-11 03.25.11.000000000 PM

Yukarıdaki çözüm (NLS tercihlerini değiştirmek) içe aktardığımda benim için işe yaramadı, ancak sonunda çalışmak için aşağıdakileri aldım:

Alma Sihirbazı Sütun Tanımı ekranında, DD-MON-RR HH.MI.SSXFF AMBiçim kutusuna " " girdim ve sonunda başarıyla içe aktarıldı. Ne yazık ki düzinelerce tarih alanı var ve bence bu biçimi tüm tarih alanlarına sistematik olarak uygulamak için bir yol yoktur, bu yüzden manuel olarak yapmak zorunda kaldım .... Birisi daha iyi bir yol bilirse duymaktan mutluluk duyarım!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.