sql >> Databáze >  >> RDS >> Oracle

Jaké je nastavení zobrazení časové části s datem ve vývojáři Oracle PL/SQL?

Pokud chcete zobrazit data s časy zobrazenými také bez použití masky formátu pomocí to_char() , je třeba změnit NLS_DATE_FORMAT . Za předpokladu, že máte na mysli Oracle SQL Developer, můžete to udělat z Nástroje->Předvolby, rozbalit sekci Databáze na panelu vlevo a vybrat NLS:

Momentálně NLS_DATE_FORMAT je nastaven na DD-MON-RR , což by se dnes zobrazilo jako 16-MAY-14 . Aby bylo možné zobrazit celé datum a čas, mohl bych jej nastavit na YYYY-MM-DD HH24:MI:SS . Možná budete chtít změnit NLS_TIMESTAMP formát také.

PL/SQL Developer má také možnosti NLS v nabídce Nástroje->Předvolby:

Dostupné modely formátů můžete vidět v dokumentaci.

Pokud píšete kód, který bude nebo může být někdy spuštěn někým jiným, nespoléhejte na implicitní formátování pomocí těchto parametrů. Jsou v pořádku pro dotazy ad hoc ve vašem vlastním uzavřeném prostředí, ale mohou se zajímavým způsobem zlomit, když je spustí někdo jiný – s jiným nastavením NLS. Pro cokoli kromě ad hoc dotazů byste měli skutečně zadat masku pomocí to_char(<column>, 'YYYY-MM-DD HH24:MI:SS') nebo jakýkoli vhodný model. To samozřejmě také znamená, že získáte správné formátování pro sloupec; pokud máte sloupce, které představují pouze časy, pak nastavení modelu formátu relace a spoléhání se na to znamená, že vidíte všechny 00:00:00 časů, což je často jen hluk.




  1. Jak získat včerejší datum v PostgreSQL

  2. Vlastní sestavené statistiky

  3. Jak vložit záznam pouze s výchozími hodnotami?

  4. Optimalizované SQL pro stromové struktury